Why I'm Writing to You
Eight years ago I wrote a post called You Should Blog. In it, I made an argument that I still believe in: public, professional writing is something every engineer should try. Today, I want to share why I write, and have for over a decade.
It’s Made Me a Better Programmer
The first reason is that over time, I think it’s made me a better programmer. To give you an example, here’s an arbitrary opinion I hold, and how writing helped me solidify it: code coverage, the measurement of the percentage of your codebase that’s covered by automated tests, is a poor measure of code quality or team performance. I outlined this in a blog post. You don’t need to read it to follow along.
How did I form this opinion? I was on a team where increases in the code coverage metric were celebrated. I voiced my thoughts but didn’t have the influence to make a bigger cultural change. So, I decided to write about it.
As I wrote that post, I had to consider some things I hadn’t before:
- Is “Code coverage is important” an opinion held by a non-trivial number of people? (Am I building a straw man?)
- What’s my beef with it? Why do I care?
- What are the tradeoffs of adopting it as a metric?
- If I don’t think we should be measuring it, what do I think we should be measuring? Do I have another idea?
- If we don’t use it, how could we measure testing? Should we measure testing?
- Are there situations where it could be useful?
- What’s the business case for ignoring it or adopting it?
You can’t write 1,000 words on any subject without stepping into muddy waters like these. So, you look at each question and examine it, and maybe change your mind. Smart people change their minds a lot.
Even if nobody ever read a word you write, you’d be better off going through this process than if you hadn’t written at all.
It Helps My Teams
Another reason is that it helps me on teams. When you bring these ideas up to your team in crucial moments, you’ve thought a few steps beyond the first obvious idea. Not only do you have your opinion, but you know the significant counterarguments and you’ve fairly considered them. You’re not regurgitating a forum comment; you’re synthesizing the question and the most important answers, on demand.
This has made my team conversations stronger.
It’s Something I Own
Another reason I write is that my writing is a thing I own, that’s bigger than any current team or project. It’s a 24/7 billboard for my expertise that says: “Jake cares about this a lot and has for years.”
And it pays off in surprising moments, too. I’ve lost count of the times that somebody I’ve been interviewing, or who’s interviewing me, says “I read your post on X; tell me more about that.” It’s like they’ve already had a conversation with me before I’ve stepped into the room. It can sometimes feel like a massive advantage. And it doesn’t even matter if they agree with me; it’s an icebreaker leading me right into something I like talking about.
What About Growing an Audience?
What about growing my audience? I think it’s good to confess that I used to be a little consumed by this. Let’s examine that for a moment.
I have about 1.5K social media followers across a few platforms, some RSS subscribers, and a couple hundred weekly visitors to my blog. Depending on who you are, that’s either an enviable reach, or it isn’t. Either way, a few times a month I get to broadcast my ideas to a virtual roomful of a few hundred people. They listen to what I say and sometimes respond.
Imagine if, whenever you wanted, you could give a conference talk to 200 smart colleagues, or even just 50. That’s special! Most people never get that chance. I worked hard to build it and I’m going to make it count.
What If They Think I’m Dumb?
Sometimes one of those colleagues will tell you that your idea is bad and that you should feel bad. It’s uncomfortable! But it’s in service of something bigger. Cunningham’s Law states that “The best way to get the right answer on the internet… is to post the wrong answer.” If you’re chasing the right answer, learn to accept the occasional pushback.
One of my tricks from Stack Overflow is to “Make the comments obsolete.” Take the best challenges and learn from them, or address them in the post. This is a sneaky way to get better and to develop stronger content.
Conclusion: Why I’m Writing to You
When you’re writing, you’re getting better, becoming a better teammate, building something that you own, and maybe growing an audience. I encourage you to give it a try.