WordPress... what a disaster!
The previous version of my blog, thedorkside.com, was deployed on WordPress and it became a total mess:
-
tons of spam comments,
-
frequent security vulnerabilities in WordPress, and
-
the site looked cluttered and antiquated.
Furthermore, creating posts with WordPress requires using a poorly implemented web interface, which discouraged me from writing posts.
Pelican static site generator to the rescue!
Pelican is a Python-based static site generator that I'll be using for this blog going forward. There are many benefits I anticipate from moving to Pelican:
-
I can use my preferred text editor Vim to construct posts using Markdown, which is about as frictionless as it gets. I'm hoping this will encourage me to post more often.
-
Not that it will be noticable very often, but a static site will render more quickly in the browser than dynamically generated WordPress content.
-
Many of the themes available for Pelican are very clean and visually appealing.
-
The code syntax highlighting provided by Pelican appears to be a major improvement over what I was using in Wordpress.
-
It's going to be easier (I hope) to integrate other sources of content (such as Jupyter notebook output) into the blog. My initial investigations into this are encouraging.
-
Because each post is a separate Markdown file, my content is portable and and easy to version control in Git. By contrast, WordPress stores posts in a database. Exporting my posts from WordPress was inconvenient and converting them into a text representation suitable for this blog implementation was a major pain, as I might cover in a future post.
-
WordPress uses PHP (yuck), whereas Pelican is Python-based.
What's next
This is what you can expect to see going forward:
-
I'll probably try out a few different themes over the next few months. What's nice about Pelican's modular design is that themes can be easily modified or swapped without altering the content.
-
I'll migrate some of the better and more evergreen content from my previous blog to this one. I attempted to export and transfer all past posts from Wordpress to this blog, but it became clear that wasn't going to be a great approach for a variety of reasons. It's probably better to select past posts judiciously anyway.
-
I'm going to try to test the limits of what a static site generator can do. Here are some examples I have in mind:
-
Rendering Jupyter notebook output for the presentation of data visualizations and analysis results.
-
Rendering of interactive dashboard type output,
-
Integration of third-party and/or dynamic content such as comments (though this looks easy from what I've seen online).
-
Output such as sidebar lists that changes from session to session, for the sake of variety.
-
-
More focus on Bitcoin and Nostr, my top interests lately.
I know that I'll be giving up some funtionality (especially in the short term) by moving from WordPress to a static site generator, but I'm confident this blog will be better and more visually appealing overall.