I recently read Clive Thompson’s book Coders. One of the things he mentions is how coding feels so much more satisfying than writing.
One front-end coder I know used to do a lot of visual art but found she did it less now that she was programming for a living. Why? She so deeply enjoyed the binary jolt of joy when a program started working. “I think part of the reason I’m not doing just art anymore is it just doesn’t satisfy me the same way,” she said. “There is no ‘aha’ moment with a painting,” no instant when it suddenly beings “working.”
I noticed this effect myself. I’m in my late 40s but haven’t done much programming since I was a kid. But when I started researching this book, I began teaching myself a bit more and quickly discovered something dangerous: It was much more satisfying to program than to write. (81)
Interesting, no? Writing prose does not possess the same “binary pass-fail parameters” as coding. You don’t have “coder’s block” the way you have “writer’s block”. In writing, the stereotype is that authors are actively avoiding writing. In programming that rarely seems to be the case. In fact, stepping away from the act of coding—from the computer itself—is often the best thing you can do to solve a particularly thorny programming problem. But it’s incredibly hard to do—“Not until this damn thing starts working!” Personally, I’ve heard countless stories of people who were working on a difficult problem and passed on food and drink for hours until they were finally so beaten down by the computer they gave up. When they came back the next day, they solved the problem in two minutes. “If only I’d stepped away sooner,” is often the refrain when it comes to coding.
Thompson continues with his own story:
Faced with the pleasures of coding and the pain of writing, I started opting for the former. Any time my writing got difficult or existentially painful, I abandoned it—and pecked away at some code instead. It didn’t matter what type of programming; anything would do, no matter how seemingly useless or pointless or simply exploratory.
I do this too. Rather than write (or do something hard in my personal life) I go “peck away” at some code. I can easily slump into being a “computer bum, a compulsive programmer.”
Thompson goes on to describe how he wrote a number of python-based tools for himself to interact with Twitter. After a couple days noodling around, he realized he hadn’t done any work on his book. He’d merely been coding. But it was much more fun!
Obviously, I enjoy writing! I’ve been a journalist for 25 years. Some of the joys of publishing are the same as the joys of coding. They both have the joy of creation ex nihilism; where there was once nothing, now there is something. But...My achievements at coding—modest as they were—felt more objectively solid, more tangible, than my achievements at writing.
The quality of writing is notoriously subjective. This is something that tortures all scribes. Let’s consider the column I published last month in Wired magazine. Is it a good column? Well, that depends on who you ask. As the writer, I can tell you how satisfied I was with it; maybe it seemed “serviceably okay” to me, or maybe I felt I knocked it flaming out of the ballpark. Or you could ask readers or poll their reaction. Did it get a lot of shares on Twitter or Facebook? Did it produce a surge of traffic on the Wired site? Those are crude measures of popularity and don’t necessarily reflect, in some abstract and Platonic sense, the column’s good-ness. In writing, there is no objective measure as to one’s quality or efficacy. A writer’s reputation is built off the approval of others, which is what makes it feel like such a dodgy, slithy enterprise. When you’re writing you’re constantly second-guessing yourself, wondering how other people will receive it.
But the code I wrote? There’s no question there: It works...You cannot really ask whether any particular Wired column I write is “working”; writing does not possess similarly binary pass-fail parameters.
Writing is hard. Programming is hard too, but in a different way. I’ve always found it much easier to sit down and code than sit down and write. I used to think maybe that’s because I practice coding so much. If only I practiced writing more, it would be just as easy. But here’s Clive Thompson, a professional writer, and he still finds it much more satisfying to code than to write.
And yet, Mr. Thompson wrote a book and continues to be a writer. Perhaps he meant “satisfying” in a more narrow context. Personally I think I find coding more satisfying day-to-day, writing more fulfilling year-to-year.