How can I use software development to become a better writer?

Published on Saturday, 11. July 2020

I have written this blog for almost three months now. But until now, I didn't really write about why I'm doing it. It's pretty straight-forward, though. I want to become a better writer.

For me, this tautology started with a truism: It doesn't matter how good your ideas are if you can't convey them properly. The most likely reason why you can't convey them is that your thinking is unclear. The best way to improve upon this is to write. It enables you to see your thinking on paper and to inspect it. Where is it fuzzy? What aspects you are talking about are redundant? And which parts are you simply parroting without really understanding them? I don't know how much the blog has helped me with this so far. Probably, it's too early to tell. But it already has helped me with something different.

When I wrote my first post, I didn't know where I wanted to go with this blog. Still, I forced myself to write one post each week. Mostly I wrote about a thought that had stayed with me for a while or I picked an item from a list of ideas I started when I first had the idea to start blogging. Twice, I wrote something in less than an hour, simply to fulfill the goal of a weekly blog post. But I had no overall vision where I wanted to go with it. This has somewhat changed.

"Would you tell me, please, which way I ought to go from here?"
"That depends a good deal on where you want to get to," said the Cat.
"I don’t much care where–" said Alice.
"Then it doesn’t matter which way you go," said the Cat.
"–so long as I get SOMEWHERE," Alice added as an explanation.
"Oh, you’re sure to do that," said the Cat, "if you only walk long enough."

Lewis Carroll, Alice in Wonderland

For the better part of the last 5 years, I spent my time studying Computer Science. While I'm grateful for the time and am convinced that it will prove useful, a lot of what I learned is not directly applicable. For one thing, the studies contained many theoretical elements. For example, it's not entirely obvious to me, how solving a polynomial-time-reduction will help me in becoming a better software engineer (Don't worry if you don't understand the Wikipedia article. You'll probably never need this). But for me, these were the most fun parts of the studies. I'm not talking about them. To understand what I'm talking about, it is helpful to differentiate between just-in-time and just-in-case information. Just-in-time information means learning something out of necessity. You have a concrete problem and don't know how to solve it, so you start to learn about it. In contrast, just-in-case information is learning something just in case it might come in handy sometime. I think, that everyone should focus on going after just-in-time information. If you do that, you know exactly what you have to learn, and your motivation to do so is higher. On the other hand, if you focus on just-in-case information, you will learn all kinds of stuff you will never need. And if you finally need something, you still have to relearn it (granted, this will be much easier than to learn it from scratch).

Studying at a university mostly is accumulating just-in-case information. Many of the things I learned about were only helpful in that I now know some basic approaches if I want to solve a problem. I thought it would be interesting to recap, how much of what I learned is actually useful in the real world. Right now, my goal is to become a better writer. So, how can I use the knowledge I acquired at university to become a better writer?

I can go in many directions from this. I will have to relearn some parts I only know in theory about. There are some gaps I want to fill and many ideas to explore. Currently, I'm working on a tool to get better feedback on my drafts. But I will write about this in another post.