1,298 reputation
512
bio website
location Farmington, NY
age
visits member for 1 year, 11 months
seen Apr 29 at 18:42

I am a software technical lead for a team working on porting a large legacy enterprise application suite to a service based model and I am chair of a platform architecture council, whose responsibility is to drive forward common framework/architecture for various products.

Most of my experience is in back end software for real-time (both hard and soft) distributed systems written on various platform in various languages. Lately I have been doing a lot of this in C++ and C#.

I am passionate about solving problems and delivering software, and I enjoy learning how different languages and tools can enable and improve my efforts. These things mean I often find myself elbow-deep in source-control, and build and deployment infrastructure.

I am a new Raspberry Pi owner, and self-taught solder-er (is that a word?) and I'm hoping to use those in my recently acquired homebrewing hobby. I don't like to sit around...


Nov
5
comment Is wrapping a third party code the only solution to unit test its consumers?
"Anything not written by you" is a bit much. Libraries that are part of the standard or platform are difficult to wrap. You probably wouldn't want to wrap all of the .NET components, for example. If the wrappers are just pass through interfaces, or are generated code, I have found little benefit to writing tests. If there is logic in there (combining calls, etc.) tests can be helpful.
Nov
3
comment What triggered the popularity of lambda functions in modern mainstream programming languages?
You're right, I didn't look carefully enough. I edited my remark.
Nov
3
comment How can I improve my application's memory use?
I have used and been happy with redgate products. They provide the ANTS Memory profiler
Nov
2
comment Exception Handling Frequency/Log Detail
In my experience the most valuable things in the log are the stack trace, exception type, and error message (should the exception thrower be so kind as to provide that). The next nicest thing to have would be the parameter values that the current method received. In many domains logging that data is a no-no ("Employee: Rob Robson, Salary: $10,000" can annoy people). It helps to have nice, short methods that you can trace through. (Edit: The stack trace tells you where the error is thrown, so you can catch at a high level and still have fine grained information about error source)
Nov
2
comment Why do old programming languages continue to be revised?
Oh, they are incredibly useful. Don't get me wrong. They're the most important addition in C++ (IMO). I think I was not clear about what I meant there. One usually chooses C++ to have direct access to memory, deterministic performance, and high optimization potential. That doesn't change with the recent additions. We simplify many of the other programming tasks around why you chose C++, but C++ is still valid and useful for the same reasons. Scheme is updated with regularity, but the code-as-data and lispy-ness doesn't change, so you choose scheme for the same reasons today as 20 years ago.
Oct
31
comment Is conditional return type ever a good idea?
That is true for Objective-C. I tried to generalize to other languages a bit since the issue comes up in multiple languages. e.g., Ruby or C++
Oct
31
comment I need some help creating a non-binary tree (or some other data structure that will better solve my problem)
Have you considered a set?
Oct
31
comment Equal Gifts Algorithm Problem
Create an array of lists - pricePoints[priceRange] (don't forget to add one if zero is a legal price) for(book in collection) { pricePoints[book.price].add(book) }
Oct
31
comment Equal Gifts Algorithm Problem
@Karl - thanks! I think I noticed that at the same time and updated. I shouldn't write algorithms before my coffee. :)
Oct
31
comment Equal Gifts Algorithm Problem
@maple_shaft Yeah, that would be simpler and have the same result. Thanks.
Oct
31
comment Should static parameters in an API be part of each method?
Whoops. I guess I misunderstood. :) Sorry about that.
Oct
31
comment Equal Gifts Algorithm Problem
Oh - forgot to add that sorting can be O(n) because you know the value range, so you needn't use a general purpose sort.
Oct
31
comment Picking a code review tool
You're right. We run into that from time to time - I missed it in my list.