Programmers Trade Simplicity for Control


Homo logicus desire to have control over things that interest them, and the things that interest them are complex, deterministic systems. People are complex, but they don't behave in a logical and predictable way, like machinery. The best machinery is digital, because it can be the most complex, sophisticated, and can be easily changed by the programmer.

Controlling humans is less appealing from the programmer's point of view. In the novel The First $20 Million Is Always the Hardest,[1] author Po Bronson has his programmers play practical jokes on humans to demonstrate that they can control them, but the programmers take more satisfaction in making the computers jump to their bidding.

[1] Po Bronson, The First $20 Million Is Always the Hardest, Avon Books, New York, New York, 1997, ISBN: 0-380-73155-X.

The price of control is always more effort and increased complexity. Most people are willing to make a moderate effort, but what differentiates programmers from most people is their willingness and ability to master extreme complexity. It is a satisfying part of the programmer's job to know and manage systems composed of many interacting forces. Flying airplanes is the archetypal programmer's avocation.[2] The cockpit control panel of an airplane is packed with gauges, knobs, and levers, but programmers thrive on these daunting complexities. Homo logicus finds it fun and engaging, despite (because of!) the months of rigorous study required. Homo sapiens would rather ride along as passengers.

[2] All right, I confess: I'm a private pilot. Quintessential programmer-nerd Gary Kildall took me flying for the first time in his Piper Archer in 1979, and in that short flight I became hooked. The computer programmer in me loves all of that pointless complexity.

For Homo logicus, control is the goal and complexity is the price they will pay for it. For normal humans, simplicity is the goal, and relinquishing control is the price they will pay. In software-based products, control translates into features. For example, in Windows 95, the Find File function gives me lots of control over the procedure. I can specify which area of my disk to search, the type of file to search for, whether to search by filename or by file contents, and several other parameters. From a programmer's point of view, this is very cool. For some extra up-front effort and understanding, he gets to make the search faster and more efficient. Conversely, the user's point of view is less rosy because he has to specify the area of the search, the type of file to search for, and whether to search by name or contents.

graphics/07inf03.gif

Homo sapiens would gladly sacrifice the odd extra minute of compute time if they didn't have to know how the search function works. To them, each search parameter is just another opportunity to enter something incorrectly. The probability of making a mistake that causes the search function to fail is higher, not lower, with the added flexibility. They would gladly sacrifice all that unnecessary complexity, control, and understanding in order to make their job simpler.



Inmates Are Running the Asylum, The. Why High-Tech Products Drive Us Crazy and How to Restore the Sanity
The Inmates Are Running the Asylum Why High Tech Products Drive Us Crazy &How to Restore the Sanity - 2004 publication
ISBN: B0036HJY9M
EAN: N/A
Year: 2003
Pages: 170

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net