Top-Down JAMStack vs. Cloud

Oct 16, 2021

Cloud is an unstoppable force. AWS et. al have the keys to the best distribution to developers you could think of. They can offer managed infrastructure for cheaper, and sometimes, with better quality. But one place that cloud providers haven't won is with developer experience.

JAMStack, or JavaScript, APIs, and Markup is the current standard for frontend development. Everything from e-commerce sites to documentation to personal blogs mostly runs on JAMStack. The movement is largely due to the power of React and the frameworks built on top of it (Nextjs, etc.)

Now, I know what you're thinking, first LAMP (Linux, Apache, MySQL, PHP), then MEAN (MongoDB, Express, Angular, Node) – we don't need another acronym stack. But JAMStack is a bit different.

Why is JAMStack a better alternative to the cloud providers? Technically, it's not an either/or because the JAMStack simply runs on two cloud resources: the CDN and API Gateways. But we've seen this model be competitive before with Snowflake, which was "simply" just cloud storage and compute.

JAMStack companies nail the developer experience – preview environments with Vercel or Netlify, or at the framework level with the numerous JavaScript bundlers, frameworks, and other tooling. AWS entered the fray with AWS AppSync, but these services aren't as easy to define (or as composable as) your typical infrastructure API. AWS also needs to serve hyper-scale companies with primitive infrastructure, so maybe this is a form of low-end disruption?

The JAMStack is transitioning from just a great developer experience to an entire ecosystem. There are Backend-as-a-Service companies popping up to complement the JavaScript/Markdown frontends – Supabase, Xata, and Airtable. Increasingly, companies can run entirely on JAMStack without signing up for the complexity of an AWS account.

One way to look at this is a battle between top-down vs. bottom-up – will the primitives win (bottom-up), or will being close to the end-developers and top of the stack dictate downstream infrastructure decisions? I'm always amazed at how many JavaScript developers there are compared to systems engineers – and numbers matter.

The question is whether or not this stack hits the platform-as-a-service cliff – do the best customers migrate off the platform when they reach scale? Can AWS use its superior distribution and come up with a good enough developer experience?