Practice · 2014–now · Cloud Scale
SPA for Every Page
Client-side apps as the only architecture. Great for apps; absurd for brochures.
SPA-overkill failed because most URLs are documents pretending to be apps for resume reasons. Hydration, SEO, and TTI invoices arrived before the feature shipped. The correction — islands, SSR, htmx — is just admitting HTML was fine.
Cost of the fad
Marketing sites and docs portals shipped multi-megabyte JS bundles for content that wanted HTML. SEO and performance teams spent years unwinding "modern" defaults.
Case studies
Patterns

Context
Split everything, then pay for the glue
Hyperscale patterns escaped the companies that needed them. Containers unified packaging; Kubernetes became the cloud OS; microservices and NoSQL were sold as defaults. Mobile-first stuck because screens changed. Cargo-cult distributed systems stuck around as invoices. The durable move was packaging and ops maturity — not rewriting every app into a mesh.
Compare with
Related
Framework · 2013–now
React
Components and unidirectional data. Won the front-end by being good enough and having a gravitational ecosystem.
Architecture · 2016–now
Jamstack
Pre-render + CDN + APIs. The brand cooled; the pattern (static where possible) stuck.
Framework · 2020–now
Hypermedia / htmx
HTML as the engine of application state — a deliberate counter to SPA maximalism.