No WordPress anymore

January 24, 2025

This is going to be my last post on this WordPress-powered site. A long time ago I started writing first my travel notes in such a way, to share with friends. After that, I thought that I could write my work-related blog in the same manner.

For decades, I was lucky enough with WordPress. The free version with its limitations was good. When I wanted to write something, I focused on the subject, not on how it should work and link. What was under the hood, didn’t bother me.

However, the era of AI has changed everything. Personally, it finally opened my eyes to the other possibilities with static CMS. I decided to play with Hugo and created a new travel blog using that system. It was a drastically new experience, because:

  • Now I finally could focus on the content as is, not its representation, thanks to MD format.
  • The site compilation stage instantly shows all possible errors.
  • MD linting forced (or could force, it depends) me to keep the texts academically clear.
  • ChatGPT helped me to automate the most annoying parts via Python scripts.

Let me share the step-by-step updated process of working on a travel blog. First, I will start from a trivial part.

  1. You are on a trip, getting new experiences and taking photos, as usual.
  2. When you are home, sort out the photos by categories, and think of the structure of your blog in terms of categories and tags, nothing special for any CMS.
  3. Then you install a static CMS locally, Hugo in my case.
  4. Then you create a basic structure of your blog with pages. Each page has its own uniquely named parent folder and lays in an “index.md” file, with a header with metadata and page body. The header has a title, description, thumbnail picture, category, and tags.
  5. Then you focus on what you would tell about each place or event. Just a couple of phrases, and a link to get more information to those who want to know more.
  6. Then you put selected images, prepared, normalized, and scaled down to save the disk space, into the nested “img” folder, individual for each page. You do not care about file names at that moment.

And then a non-trivial, until recent times, part begins. I asked ChatGPT to write three automation scripts.

  • First – to traverse all nested folders, rename image files into a kind of <parent_folder_name>_.jpg, and add references to these files into .md files. After that, I walked through all .md files, and added small notices about each photo to an alt text area.
  • Second – apply the text from the alt text area to an image caption, to eliminate the need of typing it twice.
  • Last – to ask ChatGPT to translate the content of original English files to better English and localized versions, to exclude typos and enrich them with some facts about each place. Instead of by-sentence translation, why don’t we do it at once?

I used ChatGPT-4o mini, not the smartest one, but I thought enough for my needs. I spent 1$ to translate about 40 files, maybe it would be too much, Deepl would do it for free, but I wanted to try this way, how this model works with translation of languages like Belarusian.

The final observations:

  • Hugo is the nicest tool I have seen so far, with rich control content abilities, the webp image format support, and the MD files to keep the source ideas crystal clear. And you have nothing to pay to anyone.
  • Hosting of the resulting site is a matter of choice.
  • ChatGPT, even being instructed to preserve categories and tags, added more variety to them, compared to my initial English, so I had to polish it by hand.
  • A funny issue happened with the file names. Initially, they had a dash. After processing, some of them, belonging to only one page, got dash translated to underscore. The depth of processing was similar to how bees obtain honey 🙂

Language translation humor:

Or:

What is the result? More than good. I would say, I am happy.

What was the result? You can check it by yourself at this small travel blog