May 6, 2011

How software companies die

An essay by Orson Scott Card, found it lurking in my articles folder but i lack the source.
A very true and entertaining read. Hope you enjoy it.

The environment that nutures creative programmers kills management and marketing types - and vice versa. Programming is the Great Game. It consumes you, body and soul. When you're caught up in it, nothing else matters. When you emerge into daylight, you might well discover that you're a hundred pounds overweight, your underwear is older than the average first grader, and judging from the number of pizza boxes lying around, it must be spring already. But you don't care, because your program runs, and the code is fast and clever and tight. You won. You're aware that some people think you're a nerd. So what? They're not players. They've never jousted with Windows or gone hand to hand with DOS. To them C++ is a decent grade, almost a B - not a language. They barely exist. Like soldiers or artists, you don't care about the opinions of civilians. You're building something intricate and fine. They'll never understand it.

BEEKEEPING
Here's the secret that every successful software company is based on: You can domesticate programmers the way beekeepers tame bees. You can't exactly communicate with them, but you can get them to swarm in one place and when they're not looking, you can carry off the honey. You keep these bees from stinging by paying them money. More money than they know what to do with. But that's less than you might think. You see, all these programmers keep hearing their parents' voices in their heads saying "When are you going to join the real world?" All you have to pay them is enough money that they can answer (also in their heads) "Geez, Dad, I'm making more than you." On average, this is cheap. And you get them to stay in the hive by giving them other coders to swarm with. The only person whose praise matters is another programmer. Less-talented programmers will idolize them; evenly matched ones will challenge and goad one another; and if you want to get a good swarm, you make sure that you have at least one certified genius coder that they can all look up to, even if he glances at other people's code only long enough to sneer at it. He's a Player, thinks the junior programmer. He looked at my code. That is enough. If a software company provides such a hive, the coders will give up sleep, love, health, and clean laundry, while the company keeps the bulk of the money.

OUT OF CONTROL
Here's the problem that ends up killing company after company. All successful software companies had, as their dominant personality, a leader who nurtured programmers. But no company can keep such a leader forever. Either he cashes out, or he brings in management types who end up driving him out, or he changes and becomes a management type himself. One way or another, marketers get control. But...control of what? Instead of finding assembly lines of productive workers, they quickly discover that their product is produced by utterly unpredictable, uncooperative, disobedient, and worst of all, unattractive people who resist all attempts at management. Put them on a time clock, dress them in suits, and they become sullen and start sabotaging the product. Worst of all, you can sense that they are making fun of you with every word they say.

SMOKED OUT
The shock is greater for the coder, though. He suddenly finds that alien creatures control his life. Meetings, Schedules, Reports. And now someone demands that he PLAN all his programming and then stick to the plan, never improving, never tweaking, and never, never touching some other team's code. The lousy young programmer who once worshiped him is now his tyrannical boss, a position he got because he played golf with some sphincter in a suit. The hive has been ruined. The best coders leave. And the marketers, comfortable now because they're surrounded by power neckties and they have things under control, are baffled that each new iteration of their software loses market share as the code bloats and the bugs proliferate. Got to get some better packaging. Yeah, that's it.

24 comments:

  1. http://www.netjeff.com/humor/item.cgi?file=DeveloperBees

    found a post of the original.

    ReplyDelete
  2. i like how it is placed in the humor section

    ReplyDelete
  3. This not only apply to software companies but in all the company that requires research and creativity. Usually it's the money that messes things up and management too.

    ReplyDelete
  4. that's sad true and succinctly put - amen
    I've seen it happen but never described in such simple terms as to what can and does go wrong

    ReplyDelete
  5. Thanks for pointing out that 'management types' ruin great companies.With no intention of being rude,the programmers who play a huge role in delivering the product deserve more from the proceeds.The time around 3% of the management types get this in their heads,companies filing for chapter 11's will be a thing of the distant past.

    That's just me.

    ReplyDelete
  6. This beautiful piece applies directly to poets as well. Poetry is also a code. And poets are all consumed in creating the perfectly running code. Time stops. Creativity is like that. A sacred time away from time. Interesting that programmers and poets converge in this place/time. But they do.

    ReplyDelete
  7. This kind of thing is why doing executive recruiting right is so important.

    ReplyDelete
  8. nice article. To the point in a witty way. Nicely touched on every aspect. Thx for this. Cheers

    ReplyDelete
  9. nice comparison with bee hive

    ReplyDelete
  10. "They've never jousted with Windows" is my favorite line

    ReplyDelete
  11. As a humble bee, and fan of OSC's novels, I concur.
    Great analysis.

    ReplyDelete
  12. Very cool article. At Pentaho, our CTO came up with a beekeeper model for describing open source projects that fit's nicely with this one for internal developers. It is also a challenge in commercial open source to get both hives to work well together.

    http://wiki.pentaho.com/display/BEEKEEPER/1.+Why+Professional+Open+Source+Software

    Doug Moran
    Pentaho Community Guy

    ReplyDelete
  13. @JoshuaSmith hm...very interesting i'm checking it

    ReplyDelete
  14. hi
    great article to be shared by you, keep update the blog. good luck...

    Software Web Development Company

    Thanks
    smith

    ReplyDelete
  15. Great post. Sometimes the programmer gets too much into his own world of passion, developing some worthy stuff. When he pops his head up, make sure you keep your managers as far away as possible. Event if required, pay him extra to keep away from the workspace. Keeping passionate programmers to work as expected by managers who mastered in selling some bottled stuff or knows how to create graphs in Excel is the sure way for disaster.

    ReplyDelete
  16. Great commentary Sethu. A passionate programmer requires space and freedom to create. Managers come last or could observe from a distance keeping distractions at a minimum.
    I understand theat passionate managers want to release this awesome product now, but many a times this is the sure way for disaster like you say.

    ReplyDelete
  17. Very interesting tips, looking forward to topic's updates. I want to share in turn with advice how to earn on gambling traffic. The most of affiliate partners look for affiliate online programs their requirements.

    ReplyDelete
  18. Excellent pieces. Keep posting such kind of information on your blog. I really impressed by your blog.
    Vee Eee Technologies

    ReplyDelete
  19. very useful and interesting review...I like it.

    Church Software

    ReplyDelete