I’ve been in Seattle the past week, first at the MVP Summit and now at the ALT.NET event. It’s been good to rub shoulders with folks from outside our little ALT.NET cocoon to hear other points of view, but there’s a particularly common refrain that bugs me a little bit. It goes something like “that’s great and all for you alpha geeks, but what about Joe Schmoe corporate developer at BIG CO?” The obvious implication is that the average .Net developer just isn’t capable of grokking things like OOP fundamentals and some of the coding techniques we use in Agile development. My pre-canned response is generally something along the lines of “if they can truly understand the page event lifecycle in ASP.NET WebForms, they can learn anything!”
In all seriousness, every shop that I’ve worked in or with that cared about the strength of their people had plenty of strong people. Some of that was due to hiring practices, but a lot of that can be attributed to a culture that enabled and encouraged developers to get better and learn new things. I think there’s a little bit to the idea that people perform up to or down to the expectations placed upon them. If you really say to a developer that I think you should know some design fundamentals, I think the average developer would very quickly know those design fundamentals. I’d really like to see the .Net community as a whole start to be a little more optimistic about the abilities of the average .Net developer so we can get on with the business of getting better collectively.