Say you want to start a blog, perhaps even join #100DaysToOffload. There are some questions you need to ask yourself. How do I start? Do I create an account somewhere? Should I build a website?

For the starters, you have two options. You can either go for using a platform or for self hosted.

Blogging platforms

Say you want someone to host the platform for you, then you have some better and worse choices. There is a plenty of platforms like medium.com, wordpress.com and alike. Some people try using platforms like instagram which I consider a terrible idea.

Things you should consider when selecting a platform

  • How easy it is to access it?
  • Is the information searchable?
  • What if you decide to change the platform?
  • How do I plug in the domain?

Self hosted CMS

If this is what you want to go for, give it a try. But if you ask me I’d go for a self hosted solution instead. Why? Here’s a couple of reasons:

  • Vendor independence - you don’t have the whole class of issues like what happens vendor decides to change the pricing or terms of use.
  • Chance to learn something new. If you have never set up a website before, this is a perfect chance to start. There are a few ways to do it.
  • Ease to move around with your content. Since you self host things, if you don’t like the first platform you went for, you have all the data to migrate.

If that convinced you to try self hosting, there are still a few ways to go. The big question is how do you want to manage the content. Should it be a whole content management system? or is a bunch of few static pages enough?

Assuming you want to go dynamic, you’ll need a server. Some service providers offer instances with wordpress pre-installed. You can also decide to go with a plain VPS and follow the install instructions. Before starting with full blown vps, consider setting up your blog on a virtual machine. Play around, set up a database, perhaps try automating the process. Consider how to perform backup and restore.

Static page generator

If this looks too complex or time consuming, static page seems like a way to go. Of course writing HTML file for each post doesn’t sound convenient. Instead, static site generators like jekyll or hugo are a way to go. If you don’t feel like paying for the VPS, you can host your blog on Github or Gitlab using the pages feature.

Final thoughts

Whatever you choose, starting blog is always an enriching experience. The first choice you make about the platform might not be your last one, so consider the ease of migration when making your choice. My advice would be to go for something based on Markdown - this choice saved me quite some time when migrating from ghost to hugo.