Fun_People Archive
21 Feb
Domesticating Programmers


Date: Tue, 21 Feb 95 22:16:12 PST
From: Peter Langston <psl>
To: Fun_People
Subject: Domesticating Programmers

Forwarded-by: bostic@CS.Berkeley.EDU (Keith Bostic)
Forwarded-by: guy@netapp.com (Guy Harris)
Forwarded-by: Leo Alvarez <loalvare@us.oracle.com>
Forwarded-by: "Steve Christensen" <Steve_Christensen@quickmail.apple.com>

Software Bees                          2/21/95               4:31 PM

Software - How Software Companies Die
        {Windows Sources, March 1995, p. 208}
        {Contributed by: Mique Talcott}
        By: Orson Scott Card

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 fathers' 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.



[=] © 1995 Peter Langston []