Building a personal site in 2021
(one from the archive)
This is an old post, originally posted on my site: https://MihaiBojin.com/ in 2021. As it turns out, running a site from scratch was suboptimal. I’m reposting this article here so that the content does not get lost and also to remind me that preoptimization is the root of all evil.
Why would anyone build their site from scratch in 2021 when there are a myriad of tools out there?
In the past year, I’ve meant to write more. I had a few pieces on Medium, my one about getting CKAD-certified being the most popular one by far. Naturally, my first thought was I will publish everything on Medium. The problem, though, is that you don’t really own your content; the platform does. This is also true for other popular sites like dev.to and Substack. Technically, you own your content, but the brand is theirs!
I didn’t think of this issue myself; I first asked for advice on the TechWriters community. I heard this argument but wasn’t convinced. Over the next few months, I discovered the Indie Hackers Podcast and heard the same argument made over and over again. Nothing quite hit it home like Episode 206. Long term, you will want to own your audience. Substack, for example, ends up taking 12.9% of your revenue. I don’t plan on monetizing my content straight away. It will probably be a while before I can start a paid newsletter or course. But I’d like to have the option!
Building an audience takes time — compound growth takes years; one new follower today, another follower next week — there’s a lot of effort ahead! Suffice to say, planning avoids unnecessary regrets later on!
With that in mind, I started researching tools and platforms I could use to host my site. Since it is, after all, 2021, I assumed finding something that solves my problem would be easy. I wanted a service I could pay a small fee to, so I wouldn’t have to host it myself. This decision was mainly based on the realization that building and managing something takes time, time that is better spent elsewhere (e.g., to write helpful content that engages my future audience).
Some of the advice I got from the TechWriters community pointed me to ghost.org. I also listened to episode 139 and liked Ghost’s mission! So I got myself a trial account and started exploring it. I quickly realized that getting it to do what I wanted wouldn’t be straightforward. I’d have to customize a lot of code, which kind of defeated the purpose. To top that off, it would cost me 30$ per month to run. There is also a 5$, run it yourself on Digital Ocean option, but that wouldn’t get me very far in the long run. No go!
Unfortunately, this meant I’d have to build my own… I tried to avoid this outcome for as long as I could, but here I am.
I had prior experience with gohugo.io, so that’s where I looked next. I found some themes and tried to customize them. But it felt very dated, like back when I used to write Smarty templates in PHP. I wasn’t inspired!
Next, pun intended, I looked at Next.js. I had heard from friends that it’s the way to write a modern React site nowadays. I liked what I saw, but it felt a bit too low-level for what I wanted. About this time, I started researching alternatives and found Gatsby (https://www.gatsbyjs.com/). Now Gatsby is still React-based, an SSG (static site generator) like Hugo; it’s not as fast but has plugins for pretty much everything and is highly configurable. I quickly went through the Quickstart and later the Tutorial. Bingo! I liked what I found and settled on using it and hosting it for free on Gatsby Cloud for free!
And so, this site was born!