For me, living the art life meant a dedication to painting–a complete dedication to it, making everything else secondary. . .Bushnell Keeler, the father of my friend Toby, always had this expression: ‘If you want to get one hour of good painting in, you have to have four hours of uninterrupted time.’ And that’s basically true. You don’t just start painting. You have to sit for a while and get some kind of mental idea in order to go and make the right moves. David Lynch in Catching The Big Fish
I’ve been reading this book by David Lynch and in it, he describes how his practice of meditation has affected his life and work over the past 33 years. I hadn’t gotten very deep into the book when I ran across the above quote. It fascinates me how similar painting and programming are, at least on an abstract level. The level of concentration required by both disciplines is immense and while no one would ever commission a painting from an artist and then put him in a room with 40 other artists of varying degrees of ability separated only by cubicle walls and expect something fantastic to emerge from his brush, it is rather standard practice to place programmers in exactly this same scenario only to be completely shocked when the results are not up to snuff.
On top of that, the life of distraction that emerges from cubicle life is to a great degree addicting in that once you begin to allow your attention to be parceled out over 10s or 100s of things, you get to a point where you can no longer actually concentrate on a single thing for more than sixty seconds or so. Hell, just during the writing of this blog post, I’ve glanced at my email at least 5 times and at least twice thought about saving it and going to do something else. Is it any wonder that programmers spit out crappy work almost all the time?
The ability to concentrate is critical to success at both programming and painting. While there certainly appears to be varying levels of ability when it comes to concentration, all people are negatively affected by external interruptions no matter how good they are at concentrating. Some day, this will become understood by a wider audience. In the meantime, software will continue to suffer as a result of the environment many programmers are placed into.