Wednesday, June 30, 2010

Software Developers Understand that People are not Machines

Some of the best ideas on management that I have read have come from the software development community. A large class of bad management practices insists that "what gets measured gets done" and assumes that management is as simple as measuring some variables and then tweaking the organization to get better numbers.

I wonder if the fact that software developers spend much of their time working with machines helps them see the differences between machines and people. If something is wrong with a program, I can attach a debugger and see what is going on. I have perfect information about the program and the program has no feelings as I inspect it and change it. For most programs, every time I run it with a certain set of inputs I get the same outputs.

All of this stands in stark contrast to working with people. The act of measurement itself has consequences even before the outcome is known.

I also wonder whether people in other fields that create or repair machines share the same insights. Maybe it is only people who don't work with machines that think people can be treated like machines.

No comments: