Why I moved from WordPress to GitHub Pages
In the beginning…⌗
A few weeks before I had this website, I decided to open a blog. I Googled “how to create a blog”, and WordPress came up as a clear winner.
I created an account, and got started pretty easy. I created a post, and got thrown to the block editor. It’s a WYSIWYG editor, which uses “blocks” as a way to define data and its properties. For example, one block can be a paragraph, the next one is a quote, and the next is an image. Each of these blocks may have their own unique properties and sets of options.
I started writing my Narnia writeup, but it felt… Unnatural. The block editor was cumbersome, and I didn’t feel in control of the options and parameters.
However, I said to myself “the goal of blogging is achieved”, and let it go. Also the default theme there is pretty cool
After some weird publishing options, I finally published it to the world with this tweet:
I wrote a writeup of Narnia0 to Narnia4. I would love some feedback!
— Barak Nehmad ⚡ (@SandSpider2234) March 28, 2020
Of course, a SPOILER WARNING for anyone who wants to try it!https://t.co/TreYNWfM9d pic.twitter.com/AHvLAgx3Nk
Let there be light!⌗
I then showed it to my brother, who said “cool and all, but why not on GitHub Pages?” and I realised that I didn’t even consider it.
After some consideration, here are the pros of GHP that helped me take the plunge:
- I can edit in any editor (currently VSCode), not just the WordPress online one.
- I can write in Markdown, which is something I wanted to learn for a long time.
- I am more in control of my content; If it’s in the public repo, it’s published. If it’s not, it’s not. Simple as that. 1
Together, we initialized the required repos, bought a domain, and set up Hugo as a static site generator, which perfectly fits my needs (input text and shortcodes, output pretty text and embeds). You can read all about the building process here.
The migration process from WordPress was quite a pain, of course because of the online editor. WordPress offers an export function, but it outputs ugly HTML (which I’m trying to avoid), so I had to manually copy each paragraph and download each piece of media again. Thankfully, I migrated after only one post, so it could have been a lot worse.
And it was good⌗
Now, I feel that it’s much less of a hassle to write and document everything that I do. Win! ✒️
-
Of course, I’m not completely in control of my data. It’s hosted on GitHub servers, and if the data center goes up in flames so does my website. If I wanted absolute control over my website, I would have hosted it out of my own home server using an Apache stack. However, security/privacy and ease of use are usually mutually exclusive, and this time I decided to go with the ease of use route. ↩︎