From Wordpress to Pelican

Posted on gennaio 22, 2018 in Sys • 3 min read

Oh well, it's time to have a personal website, I've got the desire to have one for over a decade now, I really feel the need of a storefront for my new work applications. My idea for this website is quite simple: an about page, some blog posts, a donation page for Museo dell'Informatica Funzionante and a wiki for my notes. Regarding the wiki pages I won’t have any problem, I (ab)used Mediawiki for 7 years and I'm quite sure to be able to setup correctly a server with PHP & MySQL in order to make it work properly. The big challenge was to identify a correct front end for the pages and blog. A normal luser would reply:

"Wordpress, use Wordpress! Everyone can write an article/page with Wordpress. It's simple and fast to setup".

NO. dot. Why?

  • Wordpress is ONLY 9.4 mb of tar.gz, 30 mb of source (without DB), ~100 mb installed with few plugin/themes. And I should be using all this ~~crap~~ just for my 100 kb pages? NO.
  • Wordpress needs a lot of attentions, plugin & sw update, a secure PHP installation and I'm paranoic. Are you sure that all plugins or code are really safe? I'm not a PHP developer, I can't check it. NO.
  • Wordpress is a ram/cpu killer. NO.
  • Wordpress is good for a real multi user blog, a web store integration, what-do-you-want integration. But I don't need it. NO.

and so...what's a good choice? I'm a sysadmin not an housewife or similar. I must find a different solutions. What I need:

  • A (static|dynamic) website with my pages & posts. Blog comments are not required/essential.
  • A light solution, why overkill CPU/RAM?
  • A site generator, preferably simple...I'm not a web developer and I don't want to be.
  • A fast/portable "framework" to write my contents.

We can summarize with the following words my idea:

I DON'T need the USS Nimitz supercarrier to up in the air my radio-controlled aircraft.

After a short web search I found the solutions: Jekyll, Pelican or Hugo. I choose Pelican, because I've python installed in all my workstations or server. In less than 2 hours I managed to the quick start guide, to install it from git and to choose my favourite theme (I've spent 1 hour just doing this…). In 45 minutes (with a coffee break) I wrote my pelicanconf.py with all required informations and options. It also has a fantastic feature (available also in Hugo or Jekyll) : I can write files in Markdown and they'll be automatically translated in html.

Result: I got the same site I would get from a test wordpress installation, but in ~200 kb with Pelican. Yes it's static, comments are available via Disqus only, but it gives me all I want.

Do you want to know all the steps? Here we go:

pip install pelican Markdown typogrify
mkdir ~/website ; cd ~/website
git clone https://github.com/getpelican/pelican-themes.git
git clone https://github.com/getpelican/pelican-plugins.git
pelican-quickstart
vi content/myfirstarticle.md
vi pelicanconf.py
pelican content
cd output
python -m pelican.server
visit http://localhost:8000/

Do you want the links?