Category Archives: programming

What, Exactly, Makes Something A Progressive Web App?

Since Frances and I published a blog post last year introducing Progressive Web Apps, a healthy conversation has started about what is and isn’t a PWA. There are a lot of opinions and many shades of gray. What are the hard requirements? Which requirements are marginal? What’s aspirational? This article outlines these requirements, attempts to […]

Not The Post I Wanted To Be Writing…

I was on holiday after I/O last week when Jeremy wrote up some of his thoughts on the current state of PWA UI treatment for URL access. We chatted on Twitter (apologies to Frances) and he followed up here. A few things seem obscured by the debate so far: Most “opens” of PWAs happen in […]

Service Workers and PWAs: It’s About Reliable Performance, Not “Offline”

A lot of smart folks keep asking me why AppCache isn’t a good enough solution for “offline” and why it was necessary to invent Service Workers. It’s a great question! Motivated by the regrettably uneven browser support landscape for Service Workers, there’s a real incentive to “just make something work offline” on iOS or old-IE. […]


One of the things I’ve poured myself into this year — with a merry band of contributors including Domenic Denicola, Anne van Kesteren, Jake Archibald, Mark Miller, Erik Arvidsson, and many others — has been a design for Promises that DOM and JS can both adopt. There’s a (very) long history of Promises, Deferreds, and […]