Saturday, January 21, 2012

Development has become the game. Whats your Potty Mouth Score today?

To be clear I'm not talking about developing a game, I'm talking about development being the game. This week Microsoft released their Visual Studio Achievements plug-in. The plug in 'scores' a number of things such as the number of curse words in a file, and goes down hill from there.

I do not believe that competition belongs in the development process, it should remain in the arena of sports (Being the classic Nerd, I don't think there should be sports, but that is a topic for an other time...). In my view any manager that promotes composition between teams or people, is doing a disservice to everyone from the people competing to the shareholders. How is it a good use of energy and resources?

I find this concept so abhorrent to the development of quality bug free systems, delivered on time, that I don't even know what to say about it. What are your thoughts? Here are a couple of mine:

If you score bug fixes, does someone that fixes ten simple bugs (why are they there at all if they are simple? Put deliberately so they could be 'found' to raise their score??), do they get a higher score than some one that fixed the single bug that has been there since the beginning of time that no one else could find?

What do you put down on your Time-Card for the time you spent "playing" development?

Is "Reached Level 256 in Visual Studio Achievements" really going to be a good thing on a resume?

In a different, but related mater, what I'd like to know is when did IDEs switched from being tools to improve productivity, to crutches that people do not how to program without using? For example you ask someone what "compiler are you using?" and they reply Code::Blocks.

The best 10xers in productivity are going to develop their own tools, frequently, and not be part of the herd worrying about out scoring anyone in a commodity IDE.

Most of these problems come down to our broken concept of education, and that many places already consider developers and engineers nothing but replaceable bags of meat. Companies try to get their proprietary development environments inflicted on the young and impressionable, with a bit of interest to learn, to capitalize on the Baby Duck Syndrome (You'll like environments that are similar to your first, and dislike others).

To much time is spent teaching the tools and language of the day, rather than teaching concepts and how to learn. Someone with a good understanding of the fundamentals can pickup any language quickly, from 'BF' (this is a family friendly blog), the hardest language I every toyed with, to Zonnon, in the list for 428 computer languages.

I don't know what the full solution to creating better embedded systems might be, however I'm sure it is not making it in to a game with scores...