This week marked the third anniversary of my blog. It started here.
I created this blog to reflect on my code and development as a programmer. In that spirit, I'd like to make a pitch to anybody reading: you should blog.
Why? For me, it's been an invaluable opportunity to practice explaining my thoughts, and to watch myself grow.
Translating technical ideas into words is one of the great challenges of being a programmer. We have to master it. Communicating with technical and non-technical people is crucial.
This blog forces me to reflect on my work. The process prompts the following questions:
- Why did I write this code?
- Why did I choose this language, framework, or design pattern?
- How could I have done this better?
Every single blog post containing code I've written has led me to refactor that code, just because I saw it in HTML and I realized could do better.
As a consultant and pair-programmer, communication is everything. A persuasive argument about a course of action can save me weeks of work and a client thousands of dollars. It is the most powerful tool I have, and the blog gives me a low-pressure stone to regularly sharpen that tool against.
Whether somebody reads the posts is almost irrelevant. The obstacle is the path. Start blogging and watch your communication skills flourish.
Watching Myself Grow
Each of my ~100 blog posts are a record of my professional journey. They help me remember how I've grown.
When I started blogging, I was a junior web developer at a Rails shop. I was still grasping to make sense of programming culture. Most of my posts from that first year were messages in a bottle to myself: how to administrate a Linux server, how to open a pull request, stupid command-line tricks. My opinions where cautious.
The second year, I started to explore programming and my own limits. I wrote about Elm, Elixir, and Factor. About rewriting the blog in Rails. I created a bunch of personal programming challenges that made my hands and brain hurt.
This year, it's been a platform to announce projects and deliver one-off code samples. I've been sharpening my opinions, trying to hammer out my rationale on a number of subjects. These same ideas regularly boil up, in better and better variations, in my everyday conversations at work.
Write a blog and watch yourself change.
Blogging scares some people; it certainly intimidated me for a while. I wrote code for almost two years before finally deciding to publish.
What are we afraid of? People criticizing our opinions? I've found that's going to happen no matter what you do. Strong programmers face criticism head on, listen, and defend their decision or learn from the nuance they missed. That's how you get better.
Embarrassed to be a newb? Everybody is a newb to somebody. I actually think that's one of the best things about blogging. It was part of the ethos of Today I Learned. Nobody was born an elite programmer. Make your journey public, mistakes and all, and share a roadmap to your success.
So in conclusion: you should blog. It's worth the effort and you have something valuable to say. Yes, you! If you've ever learned anything, that is something that would have helped yourself in the past. That's who I write for.
I'd like to thank everybody who has read and commented on my writing, as well as Adam Young, who gave me the inspiration to start blogging. I hope to someday have such an influence on somebody else.
Thank you for reading.