Internet speeds are getting faster by the day, yet websites seem to be getting slower. There are more web designers than ever before, yet every website you see seems to look as boring as the last. How did we get to this stage? Is there a better way?
The Past
Well, lets look to how websites used to be created and compare it to how they are created today. Not to bore you with the details, but websites are just a series of documents (the technical term is HTML), stylesheets (CSS) to add colors, fonts, and other style, and something called JavaScript to handle all the programatic aspects. In the past, the job of a web designer would be to learn to write out these files manually to create the website.
But there were a few problems with this, first off, if you had elements common to multiple pages (headers, logos, menus, footers, etc.) you would have to copy these between each page every time and change them on every page every time they needed updating. Also you needed a web developer to create these pages every time the site needed updating, which wasn’t exactly practical for things like personal websites or blogs, yet alone social media.
Thats why the content management system was created. The content management system (referred to as CMS) instead programmatically creates websites based on some template, that way anybody can create an edit a website without ever having to know the word HTML. Everything just became point and click. It also enabled the ability to automatically update common assets across pages so you dont have to change every page. The most common CMS tools that are used are WordPress, Wix, and SquareSpace.
But there’s a problem with this approach, you see, web browsers still need web formats to display a website, they don’t care about your CMS, they have no idea what that is. So every time someone tries to load a website, the CMS will generate the necessary web format files for that request. And this is a problem because it takes time to generate those pages and depending on how powerful the server that the website is running on, it can take an age.
Static Site Generators
That’s why a new approach was created, called the Static Site Generator. Instead of generating the web format files when the user requests the website, a static site generator (referred to as SSG) goes back to basics. The website is generated once, on request of the website owner, and then they are stored for future use which means they can be served with zero processing time. This provides massive speed boosts as with the processing eliminated, the only speed limitation is the speed of the internet connection. Yet this still preserves all the benefits of a CMS, the drag and drop interface, and common elements are automatically copied across pages.
An SSG also provides more freedom to the web designer. As with a CMS, the designer is constrained to the limitations of the point and click interface. Whereas with a static site generator, the designer can choose to, at their option, implement their own HTML, CSS, and Javascript freely whereever they want. This means that the web designer can create a fancy website written in web formats, that can still be edited with a point and click interface so that it can also be done by their client. While this can also be done in most CMS solutions, it is usually a much bigger task than on an SSG and is quite limited in its potential.
This is why so many sites on the web nowadays look almost identical. Nobody is creating unique designs because they are constrained by their tools. Static Site Generators give the freedom of unlimited creativity without the massive overhead of completely writing a site from scratch.
If you are still using an old fashioned CMS in 2021, you are lagging behind.