I just completed the Classic Mistakes survey from Construx. Thanks to Jeff Atwood for pointing this one out.

The survey itself didn’t seem particularly helpful, but the questions it poses do help in enumerating many of the problems I’ve experienced by actually putting them into words.

It also is beneficial to me because some of these mistakes stem from the developers instead of the management. I’ve been guilty of developer gold-plating and the silver-bullet syndrome many times, which is likely a result of being a beta junkie. We’re in the process of moving to .NET 2.0 (no, not even .NET 3.0 or 3.5 yet) and I’m already jumping to move to Visual Studio 2008 (formerly Orcas). I mean, surely WPF, Linq, and WCF would solve all of our problems wouldn’t they? Or, if we suddenly went 100% with Test Driven Development, all of our problems would disappear! Wouldn’t they?

Sam Gentile’s comments on writing maintainable code are very relevant to silver-bullet syndrome. He points out that the XP methodology revolves around 12 practices and not TDD by itself. TDD isn’t a silver bullet but instead is a tool to help document and protect your codebase. You also have to work at refactoring your code and keep it clean and simple.

I haven’t ever worked in an XP/Agile environment before, but I do like the goals that it strives for. I’m really pushing my team to learn more about architecture, design, and unit testing because I really do see the value. We really have to just start using these tools. Otherwise, we’ll keep talking about them and never actually do anything.

Thank goodness for all these tech blogs. I’ve learned more from reading these in the past couple of years than I have from just about anything else. It’s almost like I’m being mentored by all of the more experienced developers.