travismiller.com

JAMstack

2018-04-19

As previously mentioned, Netlify has done a really nice job of putting together a product which exemplifies a solid, modern approach to web development. The architecture is commonly referred to as "JAMstack", and while I initially cringed at the name, I've come to embrace the moniker.

The JAMstack website identifies 4 primary reasons for adopting the architecture: "Better Performance", "Higher Security", "Cheaper, Easier Scaling", and "Better Developer Experience". These ring all to true.

I've dealt with my fair share of security vulnerabilities that are so common in the big CMS platforms. Drupal just had two highly critical security advisories in just a one month span. And it doesn't even come close to the issues Wordpress has dealt with over the years.

The best way to get performance in a completely on-the-fly system, is to implement caching. A lot of caching. Drupal and Magento each have so many caching layers, it's a challenge remember what each of them are called, let alone what each does and how they interact with each other. Cache clean? Cache flush? 🤷‍♂️ And these are just the application level caches. Nevermind the proxy cache that you should be implementing with either Varnish, Apache, or NGINX.

Beyond the security perspective, the indisputable reality is that the traditional CMS systems are wasteful of resources. There's just no need to generate an "about us" page, or a blog post on every single request. Most content is static and rarely, if ever, changes. Why waste the CPU cycles and memory overhead to do the same thing over and over again? We know DRY, don't we?

With a simpler implementation there is simpler hosting. A side-affect of simpler hosting is of course, cheaper hosting. In certain cases, possibly even free! Several services like Netlify, GitLab Pages, and GitHub Pages make it possible to deliver your website at no cost at all.

All of the aforementioned advantages add up to one bonus advantage: A "Better Developer Experience." Less complexity and separation of concerns, never lets us down.

I'm sold and will push this architecture every chance I get.

If you want to hear a really great podcast that goes deep into the origin and evolution of the strategy, I highly recommend the JAMstack, Netlify CMS, and 10x-ing Smashing Magazine from The Changelog podcast.