Static Return
I’ve been making websites since I was in elementary school. In that time I’ve seen websites go from mainly being static to almost entirely dynamically generated. But why? Why did websites go almost entirely dynamic even though the actual content on the website is largely still static? The answer, Content Management Systems (CMS).
The first real CMS I ran across was PHPNuke . It combined a CMS and a forum ( phpBB ) into one package to make a complete website in a box. It was convenient and easy enough to deploy and allow for fast changes to the website content while also allowing interaction with website visitors. So the rise of the CMS systems began. Eventually there were others like Drupal and WordPress . The main draw to these is generally the What You See Is What You Get (WYSIWYG) editors in the Administration Panel. But they incur a cost, since every page hit causes massive amounts of code to run to essentially build a static page. This is especially bad since, from my experience, when someone goes out to hire someone else to build them a website those people often just resort to using WordPress and a ton of plugins. This ultimately exposes those websites to massive security vulnerabilities. As a lot of the time the WordPress installation is not maintained since its just serving what is essentially a static website.
Long gone are the days that the vast majority of web developers would hand write HTML. Which ultimately is a useful skill to maintain but when trying to build websites fast becomes a hindrance. But in an age of assembly line website manufacturing most resort to using WYSIWYG interfaces because its easy and saves time. What we really need now is a framework that becomes as popular as WordPress is, but the end result generates a static HTML page(s) and associated assets. Back when I was young this was Adobe Dreamweaver . As I write this I am using Hugo and Notepad++ . This is far from ideal with the kinds of websites most people want to generate, often having scrolling images, and various other customizations that are very easy with a plugin in WordPress but not as easy in Hugo currently. Hopefully we will see a rise in these Static Site Generators (SSG) in the field of website development. As WordPress is one of the most prolific CMS that is very easy to target with automated bots.
A tip to anyone out there looking to build a new, or upgrade an existing, website. For the most part the website should be composed entirely or mostly of static content. And if you do need dynamic content its better to integrate that with a Web API with a static page front-end using JavaScript . As this reduces the attack surface and vastly speeds up page loading for a better user experience.
There are now very powerful and useful hosts for static content in GitHub Pages and CloudFlare Pages . Any Web API can be hosted on a separate subdomain.