Having just finished "Zen and the Art of Motorcycle Maintenance" I find that the word "Gumption" has been rattling around my brain for the past week, sneaking it's way into my mindset as I go about my daily tasks.
"Zen and the Art of Motorcycle Maintenance," (ZAMM) subtitled "An enquiry into values" was recommended to me as a great "Programmer book" - not a "Programming book", but rather one of the those more intangibly beneficial books that effect pause and reflection in the normally full-speed-ahead world of software development. A book that couldn't be further from the world of development yet somehow come across referenced in a bibliography or quoted in a presentation every couple of months.
So I took the bait and jumped in, and really had no idea what hit me. I found myself sneaking in reading to get through the book - before work in the mornings - waiting in line - with an enthusiasm normally saved for Neal Stephenson and Douglas Adams.
The central focus of the book is the concept of "Quality" as a unifying principle for the world. Heady stuff. I'll leave the discussion on "Quality" in software development to more intelligent people than I, but there was one distinctly concrete idea that Pirsig dropped into near the end of ZAMM: The concept of Gumption and Gumption traps.
Of Gumption, Pirsig says:
"I like it because it describes exactly what happens to someone who connects with Quality. He gets filled with gumption. The greeks called it enthousiasmos, the root of "enthusiasm," which means literally "filled with Theos," or God, or Quality. See how that fits? ( Loc. 4928 )
The programmer with an ample supply of gumption is easy to spot - he's the one for whom no problem is a boring problem, because we as developers can create our own gumption by solving boring problems in novel ways. Yes, tying together a rube-goldberg machine of Unix pipes is probably not the best way to solve a 10-minute data entry problem, but if it takes 9 minutes and let's me learn more about AWK, it should get counted in the win column. (You can take this way too far, but good dev's skirt the line between making boring problems interesting and making problems out of non-problems.)
But Gumption is easy to lose. When the job becomes rote and there's not a creative spark left in the daily grind, work suffers. Life suffers. And developers will either die a little inside or spend that creative spark on side projects and leave nothing for the 9-5.
So in the same way Pirsig described the Gumption traps that hinder Motorcycle Maintenance, here are the Programmer Gumptions Traps I've come across (imagine a PHB saying the following to get in the spirit)
"This is the way we do it" - There's nothing quite as dehabilitating as being told, when proposing a novel solution to a problem that "this is the way we do it, this is the way we've always done it, this is the way you're going to do it" It literally can deflate the life out of a developer in two seconds flat. That doesn't mean every programming-language or framework-related whim should be catered to, but it does mean that people making the technical decisions in a company should have the technical knowledge to make them and be able to make them on solid technical grounds. Nothing kills creativity quite like being told that whatever flawed methodology that last guy in your position came up with during a caffeine induced epiphany is one of the 10 commandments of company methodology. Not allowing any discussion on the methodologies a company uses is a sign that the company isn't doing things for the most technically sound reasons.
"Implement this UML" - As I've written about before Implementation matters - it's not just a matter of taking some designs a software architect wrote up and just writing the simple code that makes it actually run. Real software doesn't work like that, and code implemented to fullfill the requirements of waterfall design usually jump through a number of hoops to account for design flaws that could have been weeded out with a few feedback loop driven iterations.
"This is the best hardware we can afford" - Programmers are expensive, and giving them sub-standard hardware (or less than 2 monitors) makes absolutely no sense from both a financial and a gumption perspective. If your developers are sitting around waiting for tests to run or libraries to compile, they aren't working. There's a certain length of time that sites as the cut-off time for the "flow" that transcendent state where the developer and machine becomes one. If you're machine response time is less than that magic number, you'll be able to keep razor focused on that task at hand. If it's above that line, your hand will subconsciously hit Ctrl-t, bring up a new tab and type in slashdot or reddit.com.
Keeping your Gumption, being allowed to bring something of Quality into the world is one of the greatest feeling in the entire world. If you're working for yourself of managing developers, make the world a little bit of a better place by paying attention to the Gumption traps that you're laying for yourself and your developers.
....and follow @cykod on twitter
Comments Leave a comment
Looked at one way, ZAMM celebrates technology (I remember something about how the Sutherlands’ luddism negates all that is positive about technology). Looked at another way, it heads off in the direction of a simpler existence, because who can repair his own computer or computerized car?
I find myself empathizing with the Sutherlands. Rather than try to keep a hundred gadgets functioning, I put up with all manner of cranky faucets, engines, and termites besides. The deferred maintenance on my house in the past six months has me dipping into my equity to the tune of $25,000. And frankly, it would have been much more had I tried to go the route of ZAMM; plus my wife would have driven us both crazy criticizing my every mistake.
There’s just too much stuff. George Carlin does a great monolog on the subject without even touching on the aspect of its maintenance. There’s an excellent documentary, The Lost Boys of Sudan, in which one kind of ends up feeling sorry for them because they were “rescued” from a refugee camp and sponsored to the US. Ever feel overwhelmed trying to drive in Manhattan when you don’t know where anything is and everyone else does, and they’re all honking and swerving around you? Imagine how the Lost Boys felt! Our society is anything but user-friendly.
My own approach, as a native, had been the Pareto paradigm: make a 20% effort to get an 80% result, and feel as good as you’re able to about getting to do a lot of things in a slapdash fashion. But although it works as advertised (you do survive quite well with minimal effort here), there are downsides to this approach. For one, although your friends are overworked and have no life, they are also getting big bucks and accomplishing things that you are not. For another, you never get to the flow state the unpronounceable, unspellable Czech guy wrote about. And that, essentially, is the Zen in ZAMM.
Pirsig’s answer to the conundrum, if I understand it correctly, is “F*** it. Live every moment in the flow state and forget the rest of it.” So if you have an IQ of 170 and are not challenged in the hand-eye coordination area, you can maintain a house, a motorcycle, a sailboat, kitchen appliances, insurance policies, tax returns, business negotiations, office politics, commutes, and lawsuits. If you have an IQ of 110, you might have to be satisfied keeping the condiments supplied in a Starbucks and taking the bus to work.
And he may be right. Another of my favorite books is Voyaging on a Small Income.
A post-script to my prior comment, which I’m still thinking about in my own search for Quality, even if I’m only talking to myself. . .
Whenever we write or say something, it often says more about ourselves than about externals. In this instance, my own life seems unnaturally limited to secondhand sources: books and movies and the Web. My wife’s here walking around, and I’m reading, as if to say she’s less important. It’s like the loneliness Pirsig notices in people on the primary roads in America. A simpler life seems admirable in such favorites of mine as The Wind in the Willows and Voyaging on a Small Income. Yet at the same time, I get so much from movies like the Artist and Quest for Fire, and books like those mentioned above, and the Web. I’d love to have Siri as a research assistant on the iPad (which they didn’t do this time around, but I can dream) with whom I could talk and access more ideas more quickly from anywhere in the world, any time; can that be a bad thing?
Leave a Comment