Static sites are great they don’t require a Database or pre-processors and they don’t require any complex server sided setup to get working. All you need is a web server that is set to serve a static folder. In the earlier days of the Internet, everything was static and had to be written because pre-processors and server-side scripts were not a thing. At that time, every web page had to be hand coded which was time-consuming. These days we have pre-processors and server side scripts which let us create websites, web applications with ease and has also reduced the amount of code we have to write this also has resulted in a lot of developers adopting DRY(Don’t Repeat Yourself). The static site still exists and are in use, but the real questions are Are they an overkill? When to use one? and How often is the content being updated matters Is it difficult to create one? The benefit over another type? Hosting?
Are static sites an overkill
Yes, if it is being used in a setup where a Database drove the website is doing fine and does not turn into a resource hog on a web server.
When to use one? and How often is the content being updated matters
If yes, then you how often? if the site is going to be updated every date or once in a week, it makes total sense to go static especially if you are a single user/admin. If the site is updated hourly or after certain minutes, then it can remain static only till the updates are client sided why? because after a certain number of pages (150-1000) static site generators and website builds get slow and can be much slower if pre-processing of stylesheets and scripts are done. I would highly recommend going for a Database driven CMS if your website has multiple authors are multiple content publishing in such a senior a static site build would be more of a hassle and at some point turn unmaintainable as each author might end up having a different version of the same or different content.
Is it difficult to create one?
No, these days we have static site generators like Jekyll and many other popular static site generators that are well documented so a less knowledge person can also create a simple and fast website. Most of the static site generators like Jekyll ship with markup stylesheet and scripts pre-processors like Markdown, Sass, Coffee Script that give you more control over your output. It is also lighter because it is a pre-rendered page which can be great for a high traffic website that does not update often especially when running on a low spec server
It is faster than a Database driven website because it does not require any server sided pre-processing or querying or doing any kind of fetching. It can be built on any system supported by the specific static site generator. It can be previewed locally much easily before being published to production. It is more like a filesystem, so it can be version controlled easily with the help of Git or Mercurial or any other DVCS tool.
All you need is the output of the static site and place it into the web root even the most minimal web server can serve the website. GitHub offers GitHub Pages service that lets you host your websites on *. github.io domain, which is great if you want to have an open-source website. It also offers Jekyll integration. Which makes it cheaper to host, which is great if you don’t want to spend a lot of money on. I would recommend that you do good research over static site generators and builders so you can find the right tool for your website.
Thank you for reading, like always stay tuned for more content.
I compiled a list of software and services that I use to improve my workflow, here is the link to the list.