I have been a content creator on and off since 2010, writing blog posts about Go and frontend, and speaking at tech events, and the biggest challenge I have had has been perfectionist tendencies. Perfectionism is holding yourself to the impossibly high standard of always doing things perfectly, and it is commonplace in tech.
Although I have been able to get a lot of useful tutorials and other posts published, it was only this year that I was able to really start releasing consistently. Before that, my perfectionist tendencies made it take forever to get a new post out the door, and caused me to feel like my content was going to be nothing new that people couldn't already Google for. That narrative in my head left a lot of unfinished blog posts piling up in the blogging folder of my
$GOPATH (yeah I'm a Gopher 🐹), and it also often stopped me from submitting tech talk proposals to events.
I knew I had good ideas for posts, and wanted to share what I was learning, but I would get tangled in trying to perfectly phrase my writing and craft poetically slick coding examples. I felt defeated when Sunday night came, ending the weekend without my idea becoming a post.
The past 3 years, though, I have been able to release much more frequently than before, covering what I had picked up for years in tech careers and Go, as well as things I had learned much more recently in frontend. I had experimented a lot with how to blog more productively, but mindset was by far the biggest single factor in getting posts released, so I would like to share some tips on what I did to press publish in the face of perfectionism!
⚠️ Before we start, I would like to say that perfectionism is a topic in psychology. I am not a therapist, these are simply techniques that personally helped me. While these tips might be helpful for you as well, please do not interpret them as medical advice.
This was my motivation for starting to blog in the first place. After taking Data Structures in college and seeing the difficulty ramp-up from the intro classes I took before that, I wanted to write my own tutorials on the topic to help people grasp these concepts, and I cranked out posts fast!
Writing while knowing that it will help someone was a significant mindset shift from when I had picked up blogging again after college. At that point I had seen a lot of highly produced web development blogs, so I was trying hard to make my posts have perfect coding examples and look like a senior engineer wrote them. But by "coming as you are" when you teach, in addition to taking the writing pressure off, the perspective from where you are, newcomer or senior, has a lot of value.
In my own blogging, I've been in the Go commuity for 6.5 years, but had started teaching myself frontend only 3 years ago, so I have lately taught from both newcomer and experienced perspectives. Teaching something you're experienced in is great because you've used that technology to build a lot of applications, and you're well-equipped to explain the subtleties of your technologies, like what goes on in the memory underlying slices in Go. And teaching from a beginner's perspective is great because not only are your explanations of concepts relatable to other newcomers, but it gives a fresh perspective to veterans of your topic. Either way, teaching from your own perspective is what makes the content yours!
Also, I know I need to finish my blog posts so I can deliver more cute pictures of my doggo Lola the Micropanda. Though she's got a good content creation game of her own!
One of the hardest things in blogging for me is starting the post while having the knowledge I want to share, but agonizing over how to structure it and what would be the most concise code samples to illustrate a concept. And this isn't just tech bloggers either, writer's block is older than computers. But when I do have a few paragraphs wriiten, more paragraphs often follow.
There are a wide range of ways to start getting your ideas from your head to the keyboard. For example, some people work best by organizing their thoughts into an outline before writing, which is why a lot of schools have students deliver an outline of their essays before they start on the rough draft. Other people are good at jumping right into the writing. My good friend Nicole Archambault, who is also a content creator, actually once suggested I try writing a post in a single sitting.
For myself, the style that works best for me combines those two techniques into a "three-shot" style; I use my first sitting writing a post for exploratory free-writing, to figure out how I'll talk about the concept I'm teaching. Then, in the second sitting, I have formed some way of arranging my post into sections, so I can write the actual post. Finally, the last phase is all about editing to make the writing sound clearer, and trying out my own code snippets to check for bugs. With this style, I don't feel like I need to finish the outline before I start getting ideas into my text editor. I also like that style because it lets me use my perfectionist tendencies in a positive way; on the flip side is an eye for detail, and that attention to detail really shines in the editing phase of writing!
When I am writing more code-focused posts, what I also like to do to get momentum is write the code first, then write the explanation of the concept to go with it. I like giving concrete, real-world examples of how code concepts can be used, so coding first helps me run into good examples to teach with. It also helps me gain momentum because when I'm writing the blog post, I like the code I came up with enough that I don't feel the need to dig for a "more perfect" example to teach with.
Finally, as a blogger, in addition to conveying knowledge, you're conveying your own personality, so experimenting with blogging styles helps to make the post yours, in the process make it more engaging, and it makes it easier to figure out how to express what you're writing. Saron Yitbarek talked about that in this video on storytelling in conference talks, and I think it's also why the Happy Learn Haskell coding book is so easy to connect with.
For me, discovering my style doesn't just make my posts more engaging, it also makes me more confident in what I'm writing, and in the process, helps me have momentum when I work on a post. However, the process to learn that style is not one-off; your technique is not something that has to be set in stone the moment you pick up a pencil, it can evolve as you grow as a writer. One way I started figuring out how I want to write is by thinking about who I learned the most from, and then seeing which aspects of their teaching fit me well. I'm not talking about copying someone or trying to be someone you're not, but rather about adapting the styles you connect to into your own content creating technique that lets you confidently teach material in your personal way.
One other thing, it was not an overnight process figuring out how to blog despite perfectionist tendencies, and I am still working on that a lot as a content creator. So if you are working through writing perfectionism yourself, know that if you do still feel that pressure, it doesn't mean that you're not making progress. Keep being awesome, and best of luck with your writing!