I've been writing more recently. One of the biggest reasons is that I've been writing more recently. Writing begets writing; the more I do it, the easier it is to do it more. I've found diet to be similar. When I'm eating fresh fruits and veggies, it's what my body craves. But as soon as I "treat" myself with a bag of chips or a fatty big honking slice of greasy pizza, guess what my body wants? More of the same.
I've written off and on for quite some time. Someone recently pointed out how you could tell how long someone had been in their job by when their last blog post was written. While coders tend to be more comfortable with a text format than many other professions, we're not the best at writing consistently.
I wrote another post about how coders code and thought it was fitting to mention how I've made a plan to publish a blog post once a week. I've been keeping up the streak for awhile now and feel pretty good about it. One trick I'm using is that I've got a few posts written ahead of schedule, so it doesn't feel like I'm down to the wire on deadlines. I'm on a plane right now without WiFi and feeling particularly inspired so this is actually the third post I've written today.
In the past I've traditionally written technically focused articles. I still do that and will keep publishing them. The interesting thing, about forcing myself to sit down and write no matter what, is that I can't wait months for that huge open source pull request I'm working on to drop before I blog about it. I've got to talk about what's on my mind right now, ready or not. Sometimes it ends up being awful and when that happens, since I have some buffer room in my schedule, I can throw those away. Sometimes it ends up taking me places I wouldn't have gone before. When you go through life with an eye out looking for a story, you'll be amazed at how many you find.
I tend to preach when I write. I like to have a message. I like to try to get people motivated or active. I do the same when I give talks. Instead of "look at what I did" I usually also add a "and here's how you can do it too" flare. It's a bit of a crutch at this point as sometimes things can be interesting without having to be instructive. While I don't necessarily recommend blogging as it is tedious and time consuming, I do recommend you write.
As you write you'll find an audience of one. Read your own writing. Take notes. You'll be surprised at what "past you" can teach "future you". Keep writing and maybe you'll find a larger audience. Write wherever possible: Write commit messages, write GitHub comments, write design docs, write READMEs, and method docs. Write. The more you do it, the easier it will be.
Writing is an act of communication. Programmers are really in the communication business. We communicate with machines in an arcane language to tell them how to do our business. We must share our requirements and our efforts with others, co-workers, bosses, co-founders, and customers.
While we often think of writing as a one-to-many medium (books, magazines, blog posts) our most important writings can be the ones that are day-to-day. While your primary job title might not be "writer", writing is a tier-one method of communication.
If you write, I can't guarantee fame or fortune. I can't promise you an audience. However, I will give you my word that writing will bring more writing. Communication will bring more communication. Clarity will bring more clarity.
Write.
If you liked this post join my free mailing list for more.
Top comments (5)
Definitely agree with that. As a fledgling programmer, I am glad I have decent enough communication skills to convey my ideas or problems I'm facing. It helps my learning process so much more, as well as hopefully helps others teach or guide me better.
Any tips or strategies to force yourself to write more?
Thanks for sharing your thoughts!
Try to make writing into a habit instead of a core. Also find things you want to write about.
This is some previous advice I gave in another comment section:
Almost everything I write about with the exception of the feature work I do for open source has already been written about by someone else. The reason why I write about it is because I haven't written about it before.
You bring a unique perspective and experience to the table. Even if you do nothing but make a summary blog post about all the other people who have written about that thing, that's still adding value. If not to other people, than at least to yourself.
Even if no one else finds it valuable, then you'll have learned something in the process of creating the piece.
I feel like I don't have enough experience or technical knowledge to be writing about it
The secret is that I really don't know what I'm doing. I've also been writing semi-regularly for the last 5 years. It's taken me that long to get a consistent tone, voice, and set of things that other people find interesting.
Adam Keys who I worked with at Gowalla told me that he would sign up to give conference talks on things he didn't know about because it would force him to learn them. While you might not know as much as an expert when you give the talk, you'll know much more than when you started. Also you'll be in a better position to teach beginners than an expert many years into the field. Not sure if you saw it but my "4 Year Typo" touches on this schneems.com/2017/04/19/the-four-y....
As for how I find inspiration: I look at what I'm working on. What am I frustrated with? What am I happy about? What technologies do I wish existed in the world or what do I wish someone had told me X years ago.
If you don't think what you're doing is interesting, why not? Could you be doing something you would consider worth reading about? Don't sell yourself short. Try picking some "boring" topics and writing about them. You may surprise yourself. I never know which posts will do well before I publish them and get them into the wild. I just have to try.
Great advice. I will definitely keep it in mind when writing. Appreciate the response!
Thank you for the article. What is your toolset for article writing?
I like a very minimialist writing environment so I don't get distracted.
I make my first draft in Sublime Text 2, I have spell checking disabled. I try to write as quickly as possible with minimal editing. Before that I try to have a good topic and a few bullet points I want to hit in my head.
After I have a draft. I copy and past it into draftin.com. I edit for spelling and grammar there. I sometimes use their paid editing services.
My finished edits live in draftin. Once a week on a monday/tuesday/wednesday I pick an article that is ready to go and post it. Send out a tweet, and and a letter to my mailing list and sometimes post on relevant link aggregator services like lobste.rs or reddit.