How your programming skills can make you a better writer
3 min read
If you’re a developer thinking about starting a blog, you might be worried because you haven’t written anything since putting together a paper for a college course.
I was in the same boat a few months ago when I wanted to start writing. I felt woefully unprepared to start writing, and I didn’t think I had the required creativeness to start writing.
So, the first thing I did was to read and take courses on writing.
I found that most common advice centers around a few fundamental principles. And funnily enough, there are direct parallels to the basics that we teach new coders. In addition to sharing principles, even some of the writing processes have direct comparables to the way we code.
If you’re a developer that wants to dive into writing, you’d be surprised by how many of the skills you use for coding also apply to writing.
Here are a few reasons your programming skills transfer to writing…
1. You prioritize simplicity and clarity
One of the most recommended books for learning about writing is On Writing Well by William Zinsser. In the book, one of the critical points he repeatedly drills into you is to prioritize simplicity and clarity above all else.
Shani Raja dubs four principles of writing in his popular course Writing With Flair. The first two principles being Simplicity and Clarity.
Say what you have to say using the simplest words you can use to do it, then stop. Don’t be verbose, don’t repeat yourself and avoid redundant words. The reader should understand and follow your writing with little to no effort.
These lessons struck home with my inner developer. Keep my writing DRY, but not dry.
Simplicity is another principle coders and writers share. Avoid the need to over-engineer your writing, and prioritize readability.
You already do this when coding with future human readers in mind. Prioritizing comprehension over clever or succinct code is the mark of a good developer, the same way conveying your ideas without rambling is the mark of a good writer.
In both coding, and writing it’s easy to fool ourselves into thinking that the more we write, or the cleverer we code, the smarter we’ll look. In reality, it’s the opposite. It takes someone sharp to convey a complicated message using simple and easy to understand language.
It means revising and refactoring until you’re left with only what you need.
2. You already follow the writing process when you code
The method you follow when writing a program is almost identical to writing an article.
The process for writing an article goes like this:
1. Create an outline
This is the pseudocode of your article. It’s a rough overview of how you’ll approach the problem, and the points you need to hit.
2. Turn the outline into a rough draft
You are turning our pseudocode into runnable code. It’s rough around the edges, but it gets the job done, and the program has a clear purpose.
3. Polish, edit and rewrite until the rough draft is ready to publish
Perhaps the most essential step in both disciplines. As a developer, once you have a working solution, you refactor until you have a reviewable or deployable version. The first version is always a rough draft.
Then you get your code reviewed, which is very similar to the editing process in writing. As a beginner, you are your own editor and reviewer in both writing and programming.
Once you begin a career in either discipline, you have others review your work to get a different perspective.
3. You’ve been through a similar learning curve
Once you learn a language and understand its grammar, there’s little else you need to produce a piece of writing. Similarly, once you grasp the basic concepts of programming and the language’s syntax, you can quickly write a basic program.
There is, of course, lots more to learn in both areas. Writers learn new literary devices and different styles of writing to create more engaging work. Coders learn new design patterns and technologies to build more complicated systems.
In both cases, once you have the required toolset, what you can build is limited only by our imagination.
4. You’re driven by the need to create and share
When I sit down to write an article, my motivation is to share my insight and learnings. I hope that others find it useful, and I can engage and have some conversation around what I’ve published.
When I start coding a new application, I’m also motivated by getting my creations in users’ hands. Whether I’m fixing a bug or working on a new side project, I do it to share and bring value to whoever reads it.
In Josh Waitzkin’s Art of Learning, Waitzkin talks about how he mastered both chess and tai-chi and how he found they complemented each other in ways he could not have imagined.
It’s easy to think of coding as a purely technical area while seeing writing as a completely creative endeavour. But, if we take a step back, we can see the similarities and how our skills can transfer and complement.