When I went to graduate school for Education, we often came back to the concept of "Writing To Learn". Writing has always come very naturally for me, which I recognize isn't true for everyone. In my job now, writing is my product - I learn about a new technical product or concept so that I can write about it. My writing serves to educate others - but it's also been the most effective way I've found to learn and grow as a developer. When I write, I learn.
Write Because You Want To Learn
You don't have to love writing or be a "great" writer to benefit from it. Truthfully, I don't always love it myself! The point of "Writing to Learn" is the cognitive processes that happen while you are writing. It's not about the product, and it's not really about the aesthetic enjoyment of the process (though I think even a lot of reluctant writers can find those benefits with practice). Because we're not concerned with the end product, nor held to any particular standards, this model of writing is actually pretty liberating!
The main value we're trying to realize with a "Writing to Learn" approach is personal growth. When you write about a subject, your brain is engaged in a much more complex cognitive process than when you simply read. Writing promotes memory formation and often allows the writer to build more complex mental models than with reading. It provides opportunities for reflection and analysis, allowing you to challenge your initial assumptions and engage in deeper systems thinking.
All of this is probably not news to you. It's pretty standard 'teacher talk', although I think it's still good to remember. Think of this as encouragement to write purely for your own benefit - whether you ever publish anything, and regardless of how many 'likes' it gets, so long as you're writing, you're doing something that's intrinsically valuable.
Write So You Can See Yourself Grow
I get another benefit from writing about development that I didn't anticipate when I started. In fact, I didn't even notice it for the first year or so of my career as a developer-writer. For me, writing is an important tool in combatting impostor syndrome.
I could go on at some length about my mixed feelings on impostor syndrome. I think it's an easy out for dealing with some much more deep-seated issues in the industry - but that's not really why we're here today.
Really, the point is, sometimes we all doubt ourselves. We work in an industry that never stops changing. Careers in tech never feel completely comfortable, because we are all constantly working right at the edge of our abilities. As our skills progress, so does the complexity of the work we do. It can be exhausting. You will spend the same amount of time in frustration after three years or thirteen years that you did when you had been doing this for three months. It's easy to feel like you are hardly moving forward.
But if you write as you learn, you can look back and see the record of your progress. On days when all I can remember is the desperate feelings, self-doubt, and flailing, taking a look at something I wrote two years ago helps me get some perspective. As I step back, I get perspective and see that, really, I've come a long way. It works at the small scale, too. Even if I don't manage to write a single line of functioning code today, if I write down my thoughts about what didn't work, I'll be a step ahead when I start in again tomorrow. And if I manage to write an article that actually helps someone else, I feel like a hero, at least for a little while! I may still be flailing, but I'm out of the kiddie pool and into the lake. So long as I keep my head above water, I figure eventually I'll make it down the river and into the bay.
Write Because It Doesn't Have To Be Perfect
So, where to start writing? It really doesn't matter.
If you're writing thoughts down on sticky notes, make a habit of going through those notes every Friday and writing up a narrative of your week. Send it to yourself in an email if you don't want to share it.
If you're researching a new framework or library, or learning about a new design pattern, open up your Notes app and copy/paste in links from everything you read that helps you. Add a couple of notes explaining what you learned from each source. Once you think you've got a grasp on the concept, write a paragraph or two to explain it. Come back the next day and turn it into a blog post if you want - or don't! You'll still have gotten a lot of value out of the practice of organizing your thoughts and reflecting on how you learned.
I'm going to try to take my own advice and do a little more writing here over the next few weeks. Sometimes, the amount of writing I do for work can leave me without much energy to do more! But I know how valuable it is. I practice for progress, not perfection, so I'm going to try hard not to worry about everything here being 'professional' quality. As I said earlier, "Writing to Learn" is meant to be freeing - the end goal is just to keep moving forward.
Top comments (6)
This is exactly the post I needed to read right now. Thank you.
thank you so much Julia.
i needed this so much and it came in handy and at the right time.
Writing is so important for the programming. Everything about programming is writing - starting with a specification / requirements. Someone famous had said "your code is the ultimate specification". Design, user guides, code comments, process descriptions,... everything is writing. You need to be comfortable with writing to be good software professional. And, it can be a challenge for someone (me too) whose native tongue is not English.
Prasad, that's a great point! And, again, I think it's a liberating and empowering point! If you can write code, you can write about code. Nothing has to be perfect the first time you write it, but it will get easier the more you do it and the less you worry about whether you're doing it "right".
Before I was an English teacher, I worked in finance. Part of my motivation to change careers back then was that I saw how many people I worked with were held back by their discomfort with writing. I wanted to be part of empowering people to achieve their goals, and I was surprised by how many extremely intelligent people avoided or were ashamed of their writing.
There's no magic to writing - it just takes practice. We don't need to idealize "good writing", because there is no ideal! Don't be afraid to just DO it - the only way to fail is to not write anything at all. There's no shame in writing something imperfect - the only thing that can happen is that you get better. It is challenging, but so are all things worth doing - and if you write code, you're already used to doing challenging things.
👍👍👍
I appreciate you sharing this, well explained!!