Generic C# WinForms

When Generics was first released in .Net 2.0, I was kind of surprised how few built in generic types there were.  A List, a dictionary, a event handler; but not much beyond that.  Nothing like what you see with C++ STL, ATL, or WTL. (turns out there are some reasons for that, C++ Templates can […]

Read More

Changing Source Control as a Kaizen Event

I often have opportunities to work with organizations in transition to Team Foundation Server for their source control solution. Most large organizations (and many smaller ones) look for a migration route for their source code that allows them to retain history and their current merge/branching model. In heavily regulated environments, this is often a fundamental […]

Read More

Properties – A False Sense of Encapsulation

I’m having more and more mixed feelings about properties in .NET, or accessor methods in general, as properties compile to get_xxx/set_xxx methods behind the covers. I’ve never thought about it that much, but now they seem to have become a warning flag of bad design. Everyone knows by now that public fields are evil. I’m […]

Read More

Fumbling the Future

Category:General PostTag: :

If you aren’t familiar with the history of industry that includes the technologies that arose from Xerox PARC, you should be ashamed of yourself. These pioneers invented OOP, Ethernet, GUIs, multitasking, the mouse, and many other things over the course of a few short years. Even so, the value of these innovations was never realized […]

Read More

Beware of slow descents into unmaintainability

I’ve actually been coding again recently which has been a pleasant change. Of course it’s pretty much impossible to balance this with my wider responsibilities of running operations but that’s another story…or perhaps more accurately another post. Over the past year I’ve become a huge fan of the DTO / Presentation Model approach for screens. […]

Read More

Find me



The opinions and content expressed here are my own and not those of my employer.