The Lone Coder Reflections for the Unsung Linux Saviours
by Ken O. Burtch
Programming in the Real World
Psychologists might label programming a delusional sport.
Programmers sweat over projects that lead to their unemployment when complete.
Programmers invent good ideas that are implemented by their successors.
When 3 years is considered long-term employment, programmers live in a
fantasy world of loyalty, longevity and usefulness, a world that exists
in few businesses today.
Programmers are not the only people living in a fantasy
world. I recently spoke with a boss who wasn't getting productivity out of his
developers. I asked him about his leadership strategy. He created
micro-managed project to control his expenditures. He isolated the
developers so they couldn't work together. He wouldn't let the developers work
with end-users. He warned the developers that the company could get out of
software at any time. He held no employee evaluations and opted to dump staff
without warning. All this, he believed, should have improved productivity.
I asked him if he read any books on team building or
IT management. "I'm the boss," he replied. "I don't have time to read."
Consider some of society's typical qualities for leaders:
They must be in control
They must have all the answers
They must be always be on the offensive
They must not form relationships
They must think they are the center of the world
A friend of mine has a two year old child. The child cries
loudly when he is not in control. The child misbehaves when no one is paying
attention to him. The child thinks he is in control of the household. Come to
think of it, the child doesn't have time to read either--it is too busy playing
in his imaginary world.
If programmers long for a world where loyalty and contribution
are rewarded, it's managers who created the fantasy world where these
things don't exist. A boss who acts like a two year old is a boss who doesn't
live in reality. A boss
that believes that he (or she) has all the answers is a boss who has no reason
to learn. A boss who is in control is someone who cannot delegate
responsibility. A boss who cannot form relationships is a boss who cannot
communicate with his team. How can a person be strong if they
are pathological and paranoid? It's better to be a hero in the real world than
a superhero in your imagination.
Software developers cannot afford to get caught up in
illusionary goals, lurking fears or make-believe users. To be an effective
developer, you have to build your software according to the facts. Open source
development, in particular, requires cooperation and communication,
relationships and humility, logic and hope. You have to believe the best of
people, to delegate and to share to make a project work. This kind of
teammanship can only be accomplished by working in reality.
Managers could learn a thing or two from open source
developers.
In his book Slack, consultant Tom DeMarco talks about
Culture of Fear companies where stress is a status measure, fear is used as a
motivator and obsession with optimization and control leads to wasted money and
an crippled operation. The Culture of Fear is especially harmful to
programmers who need to focus on completing assignments, not worrying about
politics and paychecks.
As for the boss I was speaking to? He doesn't understand why
his policy of isolation, intimidation and threats hasn't increased software
productivity. He believes that it's the programmers that are not living in
real world. He's right: the programmers are living in his imaginary world.
January - Prioritizing Solutions on Difficult Projects
« Truth Humility Communication Nobility Freedom Purity
Excellence Right Support Courage Compassion Quality Honesty Trust
Cooperation Challenge Education »
PegaSoft Canada - A Linux Association Since 1994