Even if i am a big fan of “Doc” Brown, unfortunately, i can’t reach him by any means, so, as you, i am constrained to live in 2019. This weird introduction just to say that what i am going to tell you in this article is something very actual and you have not been catapulted in ‘90s.

I’m talking about static websites.

Most sites you visit on the web are probably dynamic websites, which means that the requested webpages are not already statically stored on the server when you demand them, but are dynamically generated on the fly trough the support of a database and a rendering engine or CMS.

Starting from the fact that i am a strong supporter of personal web spaces, not just because they are a good way to improve your web identity, but even because someone can present himself to the world in a more genuine and customized way, the coming of these technologies and frameworks made the construction of a website even more easier, cheaper and accessible. As a matter of fact the most common solution is to rely on whatever CMS, for example Wordpress, which runs 34% of all the websites on the entire internet.

Anyway, if you are not a professional webde*, the design phase of your personal space can be a little tricky since the huge number of solutions that are currently available on the market may lead in confusing even more, and further as i prompt below, dynamic sites can result to be slow, insecure, and features redundant and this is why static sites could be a more reasonable solution if you are planning to create a personal blog or website with just few pages and no extremely high logic behind (but many other use cases are covered as well!).

Four reasons to use static sites

  • Security The less components your websites has, the less security risk you face. With a static website, you just need a webserver to store your files, so you do not have any further channel of vulnerabilities such as frameworks or databases. Even if the most popular CMS’s have a huge dev community, the main attack vectors are usually the plugins which may be discontinued or version dependent. With static websites, there is nothing in between the client and the server, so if there is no malicious code in your html files and the files are safely stored, you can be sure you will be safe.
  • Speed Again, less logic means higher speed and faster loading time. Since the pages are already present on the server, they just need to be retrieved and not generated as happens in dynamic sites. Of course, the bound speed related to the content of your pages still remains but this can’t be avoided in any way.
  • Maintenance What’s happens when the CMS you are using release a new version? This is great, but you have to update which may bring to incompatibilities between plugins or even tools or software (think to PHP5, PHP7 and so on) resulting in offline site or other minor issues. With a static site deployed, the files will be available as long as HTML, Javascript and web languages will lasts. Pretty long time i think.
  • Cost and Hosting Ok, realizing a dynamic, pretty simple and light website is cheap today but a static website is cheaper. In most cases the cost is related only for purchasing a domain, because there are plenty of free hosting platforms where you can simply park your pages. The hosting provider does not need to support certain languages or frameworks because it just need to serve static assets! This allow to deploy a static site in minute ! Several cloud providers are becoming extremely popular for hosting static pages such as Google Cloud Platform, AWS, Netlify and also Github Pages.

Downsides of static websites

As everything in life, where the good lives also the bad does. Having no native back-end for your site means that any further additional logic need to be entrusted by a 3rd party and the lack of plugins involve some coding knowledge.

If, what you’ve read so far stimulate your synapses and seems interesting, the best is yet to come ! The real thing dealing with static sites are the SSG — Static Site Generator which allow everyone to create and easily maintain a static website in a very short time.

--

--

casinesque

Computer engineer with a keen interest in DevOps, cloud and distributed systems