hafur.com vague pictures of amazing moments

Up or down? Moving from WordPress to Jekyll

I just moved my website from WordPress to Jekyll. I did not even test it. I literally migrated the WordPress files from the Apache directory to somewhere else (I could have just deleted those files). For a few minutes or so, the Apache directory was empty, so anyone (and I doubt there is anyone) trying to access hafur.com during that period would have seen a blank page. I moved static Html files generated by Jekyll to the Apache directory, and boom hafur.com was live again. But let me take a step back: What is Jekyll? According to Wikipedia, Jekyll “is a static site generator. Written in Ruby by Tom Preston-Werner, GitHub’s co-founder. It is distributed under the open source MIT license.”

Static? That means all the files to display the web page are pre-created. It is not dynamically created on the server as it is done for WordPress (which uses PHP). That means my server does not have a lot of things to do anymore. It simply provides the HTML code back to the requestor, and then it is up to the requestor’s browser to display the web page correctly. I am running my web page on an AlwaysFree compute instance you can get when you sign up for an Oracle Cloud Free Tier trial account. After 30 days or using up the initial trial credits, you fall back on what Oracle calls the AlwaysFree tier. You can get a couple of AMD compute instances and up to 4 Ampere instances, each with one OCPU (Oracle’s version of vCPU - a bit different, but that’s a topic for another post). With the Ampere instances, you can also use 4 OCPUs for one compute instance, which also gets you 24 GB RAM. That’s what I did.

So I am running my web page on a single compute instance powered by 4 OCPUs and 24 GB RAM. Plenty of power for my little web page that hardly sees more than 5 visitors - per month.

Nevertheless, it feels good to know that I could now run many other things on the server, and the web page would still have more than sufficient power.

My first impression was definitely related to an increased response time. Everything feels super snappy now. You click a link, and the page is already loaded. Everything is very fluid.

The only issue is the images I migrated over from WordPress. I utilized their free CDN solution at WordPress, which optimized all my photos.

I migrated the original images, and those are just too large. As a matter of fact, I migrated the images to a CDN solution (imgx). To be honest, I will not continue using it. I will add a step to my workflow to take care of large images. I can take my powerful server and use ImageMagick to resize all images before adding them to the web page.

Currently, I am trying to find the optimal workflow for writing posts, including images, and ensuring that files are put in the right places on the web server. Ideally, the process should be similar when working on a laptop or iPad. Current status:

  • migration to Jekyll was easy
  • trying to optimize workflow, especially for image files
  • need to look into running a different web server, maybe switching to NGINX
  • automate backup. At the moment, I just tar the Jekyll folder and send it home
  • overall I am pleased so far