Jim Nielsenā€™s Blog
Preferences
Theme: This feature requires JavaScript as well as the default site fidelity (see below).
Fidelity:

Controls the level of style and functionality of the site, a lower fidelity meaning less bandwidth, battery, and CPU usage. Learn more.

Writing vs. Coding

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.