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:
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?