Friday, April 25, 2008

Survey Says: You are (probably) not a programmer

In my opinion, the most interesting surveys (or polls) are those that return results very different from what you expected. It's something like watching a movie that has a twist at the end that you never saw coming. The experience is just more satisfying than having your preconceived expecations reinforced by the actual results. Such was the case with the most recent survey run on this blog asking you to answer the question: Why do you write code? In the survey, I asked you to identify with one of three groups: hardcore programmers, pragmatic programmers, and 9-to-5 programmers. When I created the survey, I fully expected the distribution of respones to be biased towards hardcore and pragmatic programmers. I expected very few people making the extra effort to read this blog to identify with the 9-to-5 group. Man was I wrong.

With the survey now closed, I was nothing short of shocked to see a near perfect bell curve distribution of developers in the three categories. Specifically, 30% of respondents identified themselves as "hardcore" programmers (programming because they love it), 30% identified themselves as "9-to-5" programmers (program only at work to pay the bills), and the remaining 40% fell in to the pragmatic programmer group (programing as a means to an end). I personally fall in to the middle group with the slight majority of you that read this blog (maybe that's why you read...), but that should be no surprise given my previous admissions of not be a programmer.

So what can you take away from this little super scientific survey? If nothing else, this should serve a stark reminder that we all program for different reasons and that we should never assume other .NET programmers are interested in super optimized, hard core programming. In fact, if anything, this survey suggests that the majority of .NET programmers- 70% by this count- are not interested in hard core programming.

Care to share why you selected the group you voted for in the survey? Sound-off in the comments and let everyone know why you write code and then answer the new survey question: Do you unit test your code?