Less is more - A WordPress blog goes Hugo
After several years running this website on WordPress, it’s time for a change. WordPress has become overloaded, sometimes the back-end is not responsive, and writing a blog post is too tedious—in a nutshell, WordPress isn’t right for me. Hugo is an open-source static site generator built around Google’s Go programming language, which is renowned for its speed. In contrast to dynamic websites that heavily rely on php-scripting and MySQL-databases that are used to store all the content, static websites consist of html, css, and js. Making static websites sounds retro, but is in fact up-to-date and comes with a lot of benefits—in short, it’s right for me.
1. Content over form
This principle that the content shouldn’t be governed by the form, implies that content and layout are separated to a maximum degree. All the flashy things such as a Twitter time line, commentaries, etc. are nice to have, but they also distract from the essential purpose of this site, that is, providing some ideas about research on psychological assessment. Thus, from today, it is to renounce the formal aspects and spread the word. Hopefully, the change will help me writing posts on a more regular base.
2. Plain text
I really love notepad++. All zero drafts of my papers (for the concept please take a look at Joan Bolker’s amazing and helpful primer on academic writing) are written in plain ASCII-text because of its simplicity and the text-per-page ratio. Using a simple text-editor instead of an overblown word processor (even the word is ridiculous) brings you faster into a Hemingway mode of writing (i.e., “write drunk, edit sober”). For the first revision of text files, I turn on the Notepad++ plugin DSpellCeck to get rid of typos. I also like writing in Markdown, a lightweight markup language because it is easy and intuitive, especially when you start your electronic life at the rise of the FidoNet and your favorite text tool was the MS-DOS version of WordPerfect 5.1. By the way, there’s is another Notepad++ plug-in called MarkdownViewer++ to preview your markdown document.
3. ⚡ Lightning fast and secure
One of the biggest advantages of static websites is speed. According to PageSpeed Tools the computer version of the website scores 90/100 (mobile version 74/100) out of the box. This is pretty fast. Building all files takes Hugo less than 2 seconds, and uploading the < 4 MB of content including images to the server takes approximately 30 seconds. Lightning fast also refers to the fact that you can easily write new blog posts, no logging in, layout checking, and tweaking—simply write. Moreover, static websites are much more secure because they are prebuilt without any server code running on your website. Thus, it is immune to php vulnerabilities such as SQL injection or session hijacking.
4. All basics build-in
Hugo provides all the basic functionality of a modern website. That means, syntax highlighting is built in, without the need to install additional plug-ins and to adopt css-files. It’s easy to build multi-language sites; just make an additional md-file with the language coded added to the file name (i.e.,
intro.md for the default English version and
intro.de.md for the German version of the same page). Supporting multiple languages in WordPress has always been pain, even with decent non-commercial plug-in qTranslate X. Through Shortcodes you can add a lot more functionality: you can share slides of your talks via Speaker Deck, add Instagram photos, Twitter posts, Vimeo videos, etc. It is also possible to comment on your static website using Disqus, a third-party service that provides comment and community capabilities to static websites via js.
5. No maintenance
Building your website with Hugo is Set it and forget it! You neither have to update your Wordpress installation nor your plug-ins or themes. The latter was especially annoying when updating a theme overwrites your optimized css-file. Moreover, you do not have to manually back-up your content and plug-ins, since your complete website is stored in a human readable format on your local hard drive. Excellent!