April 17, 2019

You Should Write

If you are a developer, even if you are just getting started learning to program, you should be writing. I didn't take this advice myself for the first years of my career and I regret it. When I did finally start writing, I was embarassed by how bad it was. If I had started sooner, I'd be even better than I am now and you'd be enjoying the writing of a much better writer. Fortunately, starting late is better than never starting and here you are reading my work.

If you are an employee somewhere, you probably can't show your work since it's all proprietary and secret. When you go to find your next job, you won't have code samples to show, but if you were writing, you would have a way to show that you know what you're talking about. Writing skill can also be the difference between promotion and stagnation.

If you're a freelancer, writing can play a big role in your ability to find clients. Many clients I've had over the past 7 years found me through my writing (and my writing isn't even that good!). You might not have code samples to show either because your clients all had you sign NDAs. Some clients even ask that you keep the fact that you worked with them a secret. If you were writing, you'd have some proof that you understand programming concepts. Being able to say you were on a team that built some app is good, but proving that you actually understand what you're doing gets you clients.

If you're new and you're learning, even if you just started last week, there is an ever-increasing number of people who started after you. You might think to yourself, "nobody wants to hear what I have to say, I just barely understand what a variable is!", but that is silly. Your explanation of variables or strings could be exactly the thing that devs who come after you (and even some who came before you) needed to read in order to understand the topic. When blocks were first introduced to Objective-C, I read so many different attempts to explain what they were and how they worked. One well-written explanation was not enough, it took several from big places like Apple itself all the way down to random stranger devs writing on their personal blogs to finally understand. You're also helping yourself. Attempting to explain a topic helps to solidify your own understanding. Some great historical figure once said that you don't truly understand a topic unless you can write about it.

Regardless of what path you're on as a developer, your ability to communicate in written form is critical. In any team project it is essential for working nicely together (even if you share an office). Being able to make the computer do things is pretty important if you want to call yourself a developer, but if you cannot write about it, your path is likely to be rough.

The easiest way to get better at writing is to write. Conveniently, you can set up a blog and practice frequently in an environment where being bad at it won't cost you your job or cause your teammates to yell at you. Write, write often. Maybe don't even write about only programming, write about your dog if you want to. You'll get better quickly and everyone you work with will notice the difference.