The Parable Of The Golden Hammer Policy

This is a true story; it's happening right now in an IT shop near you:

The IT CMO (Chief Magic Officer) of SuperMegaBigCorp? (SMBC) has decided that quality and costs are not where they need to be if SMBC is going to become a World Class Organization (tm) and he's going to get his bonus this year. So, after reading an article in Forbes and talking to some guy on the plane back from his golf-outing in Florida, he has decided that the organization must standardize on a single, easy to learn, simple language (let's call it WizPlus2000). This simplification is going to reduce costs, improve quality, streamline integration, and promote reuse.

Here's how its going to work:

First the dream:

The cost savings are going to come from a reduced need for training and the ability to hire cheaper programmers. Additional cost savings will come from being able to swap people between departments because everyone knows the same tool sets and thus can work on each other's code.

The quality improvements will be the result of the rapid expertise the programmers will gain from being able to focus on learning this simple tool. Furthermore, trusted senior architects in the CMO group will be able to comprehensively define all the standards and best-practices needed to use WizPlus2000 in the organization, giving the programmers an even faster path to language mastery.

Finally, the streamlined integration and improved code reuse will come from the homogenous nature of the environment that these cost-effective coding experts will be able to create with WizPlus2000 and the comprehensive standards defined by the CMO's group.

Now the reality (in reverse order):

Integration will be nearly impossible because each group will come up with their own hacks and workarounds trying to get WizPlus2000 to be all things to all people. As they push the limits of WizPlus2000 (something that will happen quickly because it's a simple tool) the organization will find that more and more of their business needs cannot be met and put intense pressure on the programmers to deliver anyway. The programmers will begin to "secretly" implement "unauthorized" and "non-standard" solutions, use tools that are not explicitly verboten by the CMO group (but also not in the WizPlus2000 tool set), cut corners, skip testing, and even violate the CMO's edict and resort to writing small but key pieces of code in unapproved languages.

As the ball of mud grows, quality will shrink. Business deadlines will continue to be missed, further shortening development times, and thus further reducing quality. This will create an auto-catalytic process involving quality, architecture, and increased lockdowns on approaches and tools from the CMO's group.

Finally, this will cause development managers to request "advanced" training in WizPlus2000 for their under-talented programmers. Then, these same managers in a desperate bid to fix bugs, meet past deadlines and fill in for their training-bound programmers, will hire high-priced consultants who are "experts" with WizPlus2000. Morale will fall as programmers see the most interesting and rewarding work being taken over by consultants. Turnover will increase as programmers burn out, prompting salary increases to keep them mollified. (Sidenote: The best employees will go on to become expert consultants themselves, writing in-depth articles about how to get WizPlus2000 to mimic both C++ and Pascal calling conventions while accessing WizWare?'s proprietary RDBMS and still interface with the end-users mp3 player.) The knowledge gap and still abysmal quality will lead to more and more frequent rewrites (often requiring more expensive consultants) accelerating the auto-catalytic process.

Of course, the CMO's office will attribute all of this to a combination of not enough standards, stupid, lazy or rebellious programmers who think their work is an art form, and the ever compounding lies of the vendors and the consultants. Eventually, the CMO will get fired or promoted depending on his political skills, his replacement will fire the consultants, change the vendor, and the cycle will start all over again (often with the next CMO reading an article on the evils of WizPlus2000, and the virtues of IcedTea2002). -- BillCaputo


EditText of this page (last edited July 15, 2006) or FindPage with title or text search