Twenty years ago, I started publishing articles and essays here, and I recently published the 500th post to this site. After writing 267,897 words here and investing 2,100 hours into this site, I’ve learned a few things, made some mistakes, and I’d like to share some of these insights with you. Whether you are a veteran of the blogosphere or questioning if you should dip your toes in the waters (you should), I think you will find some useful information here.
This isn’t a how-to, this isn’t a collection of best practices, and this certainly isn’t a “how to get rich as a blogger” guide. This is what I’ve learned from making mistakes over the last 20+ years, and how you can avoid them, or maybe this will help you see that you’ve been making the same mistake.
I hope that you will find this to be helpful. Also, there’s no narrative arc, so feel free to jump around and focus on the sections that are most interesting to you.
The tools you use to collect ideas, draft posts, and systems used to publish your writing are far more important than they may seem at first. This isn’t just a matter of fighting bad tools, but because each tool or system used has a tendency to add a bit of friction to the process, and the greater the friction, the less you will write over time.
This friction builds up over time, compounding, and eventually thwarts the desire to actually write.
Whether you are using a (self-)hosted platform or a static generator, pick a framework that doesn’t get in your way. Pick something that allows you to write with the smallest number of annoyances and extra steps.
A great example of this is Ghost, it’s clean and simple. Or write.as, which has a beautiful focus on simplicity & elegance. Or any of a dozen other options.
While it’s important to look at the features, to ensure it’ll do what you need, it’s more important to choose an option that stays out of your way. Don’t compromise on ease of use for any other feature, as nothing else matters if you eventually lose interest in writing.
There are two types of publishing frameworks, those that dynamically generate the pages on the server, such as Ghost or WordPress, and static generators that build the files needed, and can be served without any code running on the server.
These static generators shift all the work to your computer over the server, allowing the site you publish to be more secure, incredibly fast, and opens the door to far more (and cheaper) hosting options. The tradeoff is that adding content is more time consuming and complex.
This site uses Hugo, as with Hugo, the added complexity is low enough that the tradeoffs are worth it. There are a huge number of options for static generators, each with a different set of tradeoffs.
It’s critical to carefully select the tools you use, and re-evaluate these from time to time, ensuring that they are actually serving your workflow well. If your tools aren’t working, throw them out. While moving data and overhauling workflows may be a temporary inconvenience, that pain won’t last as long as using the wrong tools.
Thankfully, nearly all blogging platforms offer export & import systems, making it a straightforward process to move between platforms. While this isn’t always as easy as one would like, the important thing is that the option is there. It’s important that you aren’t forced into a single platform.
One important thing to remember if you look at changing platforms, make sure you pay attention to anything that could break links. From the URL structure for your posts, to the location of your RSS feed, make sure that you either match these after the move, or add redirects to ensure that nothing breaks.
No matter what you use, make sure that you are using a domain name that you own. This isn’t just for branding, it’s to ensure that you always have the freedom to switch platforms, tools, underlying technologies, you name it. This way you always have options.
While this does add some cost, it also ensures that you aren’t beholden to any single company. If they make a change you don’t like, just move your site.
As noted above, this site is built using Hugo, though it didn’t start there. Originally, back in 2006, this site used WordPress, then moved to Octopress, then to Jekyll, then back to WordPress, and then, in 2021, to Hugo.
For writing, most posts start in Drafts, a great app for iOS and macOS, that has fantastic markdown support and using iCloud to sync between devices. I will typically use this to capture the first notes of an idea, and then work on the prose on and off, sometimes over years. This is one of my favourite parts of my workflow, it’s fantastic.
Once a piece is ready for serious focus, I then move to iA Writer, one of the best dedicated writings apps I’ve used. This is where the real work happens, and it has a feature set that’s ideal for actually getting that work done.
If I need to share an early copy of a piece for review or editing, I use Ellipsus, due to its great collaboration features.
What you write, how you approach it, and even how you think about where you’re publishing this work is extremely important. And, unsurprisingly for anyone who’s been a reader for a while, I have thoughts.
While I will say that I’ve been blogging for decades, this is not a blog. This site includes a blog, but it’s not just a blog. I publish articles about current events, essays, research, fiction, photography, it’s also where I keep my resume, and a whole variety of other things. This goes well beyond a blog, and I encourage others to do the same.
Why? Let me explain.
Your site is an archive of your work, your growth, your career, and your life. Wins and losses, lessons learned, and insight into who you are – not just one facet of you – all of these things matter, and all deserve to be given space.
Use your space on the internet for everything you can. It’s not just a place to share thoughts, but a place to share what matters to you, what people should know, and gives you a place to bring everything together. It’s important to understand and accept that not every reader will be interested in everything you post. You can’t please all the people all the time, so the best approach is to instead tailor each piece to a specific audience, and if others appreciate it, all the better.
Grow beyond blogging, own the space and make it yours.
This site used to be hosted on a platform that would count views for each post, and then I used Google Analytics to gather more data about the traffic this site got, what topics were popular, and which ones didn’t perform well. Using analytics like that is basically blogging 101.
Years ago I moved to a platform that can’t count views, then I removed Google Analytics. This is one of the most freeing decisions I’ve made in running this site. It allowed me to focus not on what would get the most reliable traffic, but instead on topics that mattered to me, or were learned through painful experience, or were being poorly addressed in media.
When you focus on the numbers, you soon find yourself serving the numbers, instead of those that could learn the most from your knowledge and experience. Ignore the numbers, write what you care about, and say what you need to say.
When you are planning your posts, it’s helpful to think about the intended use lifespan of the post. Will it still be useful in a month? In a year? Five years, or even 10 years? While it’s useful to write content about what’s happening today, there’s substantial value in writing for the next decade.
Writing content that will still be valid and, more importantly, useful in the next decade means that you’re building up a corpus that goes so far beyond news cycles. Your content is likely going beyond specific technologies. This creates a rich set of references that you can link to, and content that will always be useful, and will help you to grow an audience that values your insight.
In the special 500th post retrospective, I’ve cited quite a few posts, many of which are several years old, yet are still useful and actionable today.
Readers want to hear your voice, and even if you don’t know what it is yet, every writer has a voice. One major difference between sites that get traffic and those that get lost in the noise, is providing an authentic voice that people can sympathise with.
Be you, not a fake persona, not the person that you think people want, and especially, don’t use AI as a cheat code as a way to create content faster.
Providing a real, relatable, and authentic view of yourself is the most important thing you can do to build an audience that will come back, will give you feedback, and will share your work with others that can benefit from it.
The early posts here weren’t great, to say the least. The posts were short and frequent, several posts each month, yet the quality was far from ideal. Over the years, I’ve shifted more and more to exclusively long-form content, with the average length of posts in the 2020s being over 1,600 words, with several exceeding 5,000 words.
While the typical guide for bloggers is to push for a regular & frequent posting cadence, I’ve found this to be a mistake. Taking time, as much as needed, to create a better and deeper post is far more useful to readers than a short aside that provokes little thought.
The posts here are sometimes built over months (or more), and may have dozens of hours of work invested in them. This level of effort is clear to readers, and provides far more long-term value.
Once you’ve invested the time to cover a topic well, don’t repeat yourself in later posts, link back to the original. This both keeps your older content alive, it allows you to focus on being clear as possible for the topic at hand, instead of trying to cover multiple topics at once.
As you build up your corpus of long-lived content, you will find plenty of opportunities build on your existing content, and write topics that build on what you’ve written before. By creating these “base posts”, posts that exist primarily to make an underlying point and be linked to, you can create an evolving argument.
While I still struggle with remembering to look for opportunities to link to prior posts, it’s worth the effort.
While I’m concerned about the state of reading, I’m a firm believer that it’s more important than ever to share knowledge and experience. Now isn’t the time to retreat, much the opposite, it’s time to lift everyone else up.
I started to draft a longer argument here about why you should blog if you aren’t already, though JA Westenberg recently made this argument beautifully in The Case for Blogging in the Ruins. You should go read that.
The next decade of this website has begun, and I’ve no intention of stopping anytime soon. This is a way to refine my skills, to share my experiences, to help others avoid my mistakes, and to pay a debt to all those that helped me when I was just getting started.
Writing like this, while time consuming, is a gift to yourself and the world, and one that I believe is worthwhile. Here’s to the next decade.