In an article for Smashing Magazine, Mathias Biilmann Christensen proposes that Static Site Generators are the “next big thing”. This article actually reflected on some issues we’ve been thinking about with the sites we’ve been building using WordPress for the last couple of years.
Mathias touches on issues such as performance and complexity as the pitfalls of CMS’s such as WordPress and Joomla. It’s true, we can’t get the performance we want from WordPress out of the box – we have to resort to tricky caching/optimisation plugins to get the CMS to respond in a reasonable time. We’re successful with this, but it does beg the question of whether performance is a serious underlying problem with generating HTML server-side using database driven CMS’s and dynamic code.
WordPress itself is also vulnerable to exploits, it now powers nearly a quarter of the web, a staggering statistic that also opens it up to attack from hackers. Because static sites are not database driven, the level of complexity is much reduced making them less vulnerable.
Mathias also shows us in his article how development of static site generators has shot up dramatically in the last few months – it seems clear that this is a method of generating static sites that is gaining in popularity.
What is a static site generator?
Effectively, a static site generator is much like creating a static site in the traditional sense (HTML/CSS/JS) except that they keep content and markup separately. Usually, this is achieved by creating content using Markdown and then creating templates (with asset pipelines). The generators then combine the two to create a static site that can then be deployed or uploaded. You can even generate the site live on your server if you choose.
It’s important to distinguish between static site generators and flat file CMS systems. A flat file CMS cannot generate a static site, and always keeps its templates and contents separate.
Are they the future?
At this moment in time I’m a little more hesitant – most static site generators do not have a GUI element. Markdown is all well and good, but most general users will prefer the user interface they encounter when using a system such as WordPress. WordPress is also much easier to set up and install, there’s no need to have knowledge of the command line.
Where I see the generators coming in useful is allowing us as an agency the ability to bridge that gap between static sites and WordPress sites – many of our clients need to be able to update regularly, but prefer for us to do it for them. In this case, a static site generator is a great match. We’ll definitely be trying them out in future, but for anything to come close to WordPress, it will need to appeal to all users, not just the tech savvy.