The parallels between great programming and great writing are huge.
I thought I knew what good writing and good programming was. And as I became more senior, I got more practice with both and build up some knowledge. But it turns out lot of the complex things I learned along the way are useless. The simple stuff is the absolute best stuff.
Simple writing is the best writing. Much has been said about this by writers who are much better than me; both David Perell and Paul Graham say the same thing.
Forget all the crazy big SAT words they taught us in school; that’s all garbage. If we want to grip people and want them to understand, connect, it needs to be as simple as possible. Those big SAT words are not too different from the factory classes in Java. Those long rambly sentences are not different from the bat shit crazy patterns people were pushing in the object-oriented programming world for a while. Those crazy abstractions, on top of abstractions, in our program aren’t doing us any favors when we’ve got to find a bug, extend the program by adding more to it. And they certainly do us no favors when our teammates have to read that code and work with it.
We want to try and get as much reuse out of code as possible in the simplest abstractions possible. Writing is the same.
Great writers build up metaphors that they then reuse throughout their writing. Those metaphors for writers are like modules for programmers. Modules that unpack information in the reader’s brain each time they are referenced. Both modules and metaphors do that without needing to use all those words all over again.
Metaphors compress writing and give the writer leverage; reusable components do the same for programmers. Less is both more and better when it comes to programming and writing.
There is also the fact that both writing and programming force us to truly think though things. They force us to get crystal clear about the topic.
Fewer words, less code, less complexity make both writing and programming beautiful and easy to digest. In the end, both are written for humans.