At the time of writing this post, I've been blogging on the Dev Community for almost a year and have 12,509 followers.
I always loved writing. From a young age I would write "books" which were really just ~4 page fiction stories that gathered dust in the corner. I believe my enjoyment for writing stemmed from my voracious love of reading.
And while I always loved writing, I never intended to make a part-time career of it, yet I'm humbled to say that my blog has taken off in the past year and I want to share some of my tips for growing a successful blog.
I want to preface this post with the admission that, over the past year, my social media following has exponentially blown up which had an invaluable impact on the visibility of my blog. If you want to read more details about the crazy Twitter journey, you can check out my post.
1. Write consistently
The best advice I received from my mentor, Kahlil Lechelt, was to blog consistently.
"If you post it, they will come."
Blogging consistently allowed me to develop a backlog of content. And while blogging consistently was difficult, I quickly learned that I had to blog for myself and let go of the angst about the possibility that nobody else would read it, or even like it.
When I say "blog consistently" I don't necessarily mean publish a blog every single Monday, but publishing a new blog every week or so will allow you to build up a wonderful backlog of posts for others to read.
The goal should be to hook readers with one post, and then capture their attention with a nice backlog of other posts.
2. Include high-quality images and graphics
One of the things I did, which I believe had a positive impact on the success of my blog posts, was to include high-quality header photos and supplement the technical content with custom-designed graphics.
You can find free images for your blog post headers on Unsplash for free, however the images are often quite popular so be conscientious of the fact that others will use the popular images, and select less frequently used images when possible.
I also designed custom graphics and charts to demonstrate more technical concepts. I built my graphics using Sketch, and while this does require a bit of design knowledge, you can create custom graphics too!
Sketch is a paid tool and only works on Mac, however Figma is a free web-based tool that provides the same capabilities.
Additionally if you're not a graphic designer and you're looking for amazing illustrations, I cannot recommend Undraw enough. All of the illustrations are free SVGs and as such are fully customizable.
3. Link to relevant resources
If you discuss or note a technology, tool, or person in your blog post, link to it. I cannot tell you how many times I've had to open a new tab and Google something in a blog post because they didn't link it.
Take the burden off of your readers and link to valuable related resources.
4. Explain acronyms and related topics
If you're writing a technical blog post, please define your acronyms. I like to make the assumption that someone reading my blog post has very little prior knowledge of the topic I'm writing about.
So if I'm writing a blog post about JAMstack, I should define what JAMstack means (JavaScript, APIs, and Markup) so the reader doesn't have to.
5. Ensure images, graphics, and code snippets are accessible
If you're writing a post, everyone regardless of circumstance should be able to read it.
In the past I've made the mistake of including code snippets as images simply because they looked nicer. Accessibility trumps aesthetics. Use gist for code snippets. They're accessible and easily embedded.
6. Use quantifiable numbers where applicable
One thing I've noticed is that readers love a finite number of tips.
Some of my most successful blog posts are of the format: "X Tips For ... " People love actionable blog posts, hence the numbered tips in this post.
I recommend keeping the number of tips at 10 or below to maximize readership.
7. Write about your passions
I cannot say this loudly enough:
CREATE CONTENT YOU LOVE, NOT CONTENT YOU THINK OTHERS WANT TO ABSORB.
If you're not passionate about what you're teaching, nobody will read it.
First and foremost I write for myself. I write blog I can reference for years to come. And chance are if you love what you write, and you find value in it, others will too.
If your blog isn't catching on quickly, be patient. I recognize the fact that my growth was an anomaly. It can take years to develop a "successful" blog, but success is subjective. What I deem successful is different than what you deem successful.
For me, success is not a number, it's the impact I have on the community. If I can help one person, I've written a successful blog.
Go forth and kick ass, my friends.
Header image by LUM3N on Unsplash
Top comments (44)
This is a great post. My biggest takeaway:
This is incredibly true. About three years ago I started doing Wes Bos' JS30 and I wanted to write about my progress. I was incredibly naive to think I could pull off doing JS30, write about it AND get my university stuff done at the same time so I didn't really get very far. What is amazing, though, is that to this day those handful of posts get hundreds of views every single week on Medium.
I really want to get into blogging again. Not only because I really like writing it, but it helps me get things straight for myself. Writing about stuff helps me verify if I understand something or not. It really is a great way to help yourself while helping others!
Yes definitely! You don't have to blog to be successful, but if you enjoy it, there's a bigger likelihood that others will enjoy your writing too!
Definitely!
I like most of this post, but I disagree with the idea "If you post it, they will come." I think it sets people up for disappointment; the Disney-like, "if you wish hard enough, you can be anything!".
There are people who have been posting high quality stuff for a long time who do not have a particularly large readership. And that's ok. Someone who makes 1 or 100 posts and has 1 or 100 followers can produce wonderful, helpful things we wouldn't otherwise get to see. A platform like this gives - theoretically - equal weight to every new post. If it's in a topic you follow, it's in the "latest" view for you and you can vote it up based on its own merit.
I don't believe that "the goal should be to hook readers". I think we should encourage people to write because they think something's interesting or think they can offer something to someone, whether that's one person in a bedroom somewhere or a whole industry.
Exactly!
You say, "for me, success is not a number", but you head off this post (and others) by telling people, specifically, how you have a lot of followers. It's obvious that you think it's important, or at least that you think your readers think it's important.
You made a post a while ago about having a lot of twitter followers, where I made a similar comment: the fact that DEV doesn't show follower numbers to people is one of its strongest features. It's not gamified; it doesn't encourage the persuit of Magic Internet Points and it doesn't make newcomers feel inadeqaute.
My reaction to visiting a site and seeing someone with hundreds of upvotes telling me they have thousands of followers, after pouring my heart into a post and watching it vanish without a trace, is to wonder why I should bother. Suggesting "[i]f you post it, they will come" makes people feel bad when it doesn't happen, and it doesn't happen for 99% of people.
I think that DEV is seeing a lot more of these posts and an awful lot of them are links to or copies or articles on other sites. These are "good" for pulling in traffic from Google, but they make the feed look like it's full of clickbait once you're a signed-up member.
We've been trained to expect certain title templates to be clickbait, and that's one of them, that's all. I'm not saying it's intended to be clickbait, I'm suggesting that people might avoid it for the very reasons you notice them clicking it.
I've occasionally made a post with a title like that. I cant say I've noticed any difference in the number of views, looking back, and I don't think I'd do it again because of the way I think it looks.
Rather than "10 ways I made my portfolio load faster", I'd suggest, "Improving the load times of a presentational website". Maybe it sounds stilted, and less 21st century, but it doesn't sound like it's going to be a bait-and-switch.
I do like your other points about consistency, accessibility and including links to resources.
Explaining acronyms the first time they're used is also a very good point. It's not patronising or irrelevant to say "MAMP (MacOS with Apache, MySQL and PHP)" the first time you use it and thereafter use the abbreviation. I think doing this is really helpful and has the side-effect of making your posts seem a little bit "professional".
Thanks Emma! Your post is awesome...as ususal ;)
About the number 6, in one hand I couldn't agree more. Because I wrote a post called "3 tips for scaling large Vue.js application" and it was a big success.
But on the other hand. I've the feeling that "5 tips to improve xxx" is a little clickbaity? What do you think about?
It's only clickbait of you don't deliver the goods.
Exactly!
I wouldn't say that's clickbait! If you have 5 tips I can't see why that would be clickbait :)
Maybe you are concern about quality of those tips? Like Emma said if you deliver tips you should be good... For some people those tips can be useful...
Some people call it clickbait, some people call it clever.
It's honesty amazing the difference a quality header image can make to a post.
I'm quite a fan of honest accounts alongside technical content you're passionate about. Much as LinkedIn and its ilk might try to convince you it's not all rainbows and unicorns and sometimes you mess up (hello crashing the production server) or make mistakes and it's nice to know we all do.
This is so true👍🏽. I stopped writing for a brief period as no one read my posts. Then In an attempt to get that 4 week streak badge I started posting every week. Writing consistently really helped my blog gain readers. My follower count almost doubled. Writing consistently also helped me to find my style.
This is also true. Writing consistently meant I needed ideas or inspirations. This pushed me to think in ways I normally wouldn't think of. Like, "how does
Math.random()
in JS work?" is the base of a post I made about prngs which was featured as one of the Top 7 posts on Dev for that week.Thank you Emma! I find this very useful especially that I am thinking about getting back to writing again after 2 years of hiatus. My favourite takeway is writing about your passions.
I always find easy to finish up on a blog post on a topic I am excited about indeed.
"If you post it, they will come." I think this is only valid when you are posting community-driven blogging platforms like DEV, Medium, and Freecodecamp just to name a few because technically they are doing the content distribution.
Building a following on a self hosted wordpress blog would be much more challenging because the writer would be also in charge of the content distribution.
I would love to know more about your take on this and your experience on building a self hosted blog :) Also, What's your one tip to make advanced tech posts accessible to the general audience :)
Thanks for this, Emma. Your posts have always been inspiring. I'll make sure to keep these points in mind - I just launched my blog at david-neuman.com with one post!
Gotta keep writing and make myself a backlog.
Congratulations for being so successful ⚡⚡
Thank you!
My biggest realization has been that a post does not need to be a massive 40hr post but is acceptable to be a small idea.
Thanks for the undraw link, I will likely replace a lot of my unsplash usage with undraw. It looks amazing ✨
Oh boy! This came at a time I really needed it! Thanks Emma!
Preparing to start blogging a lot on dev.to 2020 and beyond.. Thanks once again
PS
You didn't say anything about asking people to help review your draft before publishing. Is it not necessary?
Some comments may only be visible to logged-in visitors. Sign in to view all comments.