The recent rise of the JAMstack represents an ideological shift in how websites are built, deployed, and maintained. At Ample, we view this strategy as nothing short of a game-changer for our clients; it’s been a game-changer for us too.
As a small boutique agency focused on user-experience and online application development, we build lots of marketing sites, the majority of which live on for many years. When technology advances, these systems need updates to stay secure and performant. After all there is nothing worse than trying to triage a neglected copy of <insert preferred framework>.
Often, the products we deliver need distributed environments to protect against single points of failure. What that means is lots of servers, that all need to be fine-tuned and orchestrated perfectly, never mind the fact that keeping those servers fully-patched and highly-available 24/7 is expensive.
Luckily for developers everywhere, the JAMstack resolves each of these issues by encouraging a return to simple, static HTML.
When clients experience application errors, it can be difficult to respond fast. Reengagement with clients is important to us, so it’s critical that we address problems with haste. Due to our size, we often have to drop what we’re doing to put out the fires quickly. However, the more complex the application, the more difficult moving fast can be.
Dynamic software gets old and turns into technical debt. Instead, imagine pre-rendered static sites deployed to a content-delivery network (aka CDN). JAMstack sites not only reduce long-term maintenance but are also simple to build with less dependencies — meaning even a junior dev could be tasked with tackling any issues from past clients.
As global adoption of smartphones grows, the speed of your online property is more important than ever. Thanks to profiling tools such as Lighthouse and GMetrix, developers have a roadmap to success. But optimizing an aging monolith is tough and expensive and it can be confusing where to spend your money for the best possible ROI.
Under the JAMstack approach, performance is a first-class concern. Static files load faster because there are less round trips to render a page. Your entire project gets deployed to a global CDN which reduces latency and increases the cacheability of your site. This makes your site load faster so users can enjoy a speedier experience while your bandwidth consumption goes down. It’s a win-win!
Thanks to script-kiddies, that one neglected copy of Wordpress or Drupal is a sitting duck. Like your car, dynamic applications need routine maintenance to remain operable. Unlike your car, some jackass with a grudge can wipe out your database or hijack a user’s session with little more than a Google search.
We don’t need that kind of stress in our lives. When following the JAMstack principle, server-side processes are abstracted into microservices or APIs. Essentially, we are reducing attackable surface areas. The back end sits safe in one spot. The front end sits in another spot as a secure, static html site. See? No need to worry. Just stick that headless CMS behind a VPN and go have a beer.
Monolithic apps are complicated and have many single points of failure. While popular frameworks allow teams to move faster, they can be hard to scale. Containerization is a great solution but often requires a dedicated dev-ops team. As complexity in your infrastructure increases, so does the difficulty in troubleshooting problems.
JAMstack sites are served from the edge. Unless the CDN goes down, your site stays online completely unchanged until your next deployment. This approach ensures near infinite scale at a fraction of the cost.
Outages for CDN providers are extremely rare. Service level agreements (SLAs) for nearly all providers ensure 99.9% uptime is guaranteed. Accordingly, during a recent 3-year period highlighted by tech news outlet The Information, Amazon Web Services (AWS) logged an average downtime of approximately 2.5 hours per year. That’s an average downtime of 0.03%!
For these reasons and more, Ample is all-in on static-site generation. The JAMstack has led to a reduction of both our development and operational costs. Thanks to this approach, we’ve increased security and lowered the barrier to entry for new team members. Our clients enjoy better performance and near-infinite scale. And we can all rest easy knowing that their site or app will stay online for as long as web browsers can render HTML.