3 ms·
A Beginner's Guide to Progressive Web Apps (2016)
- cm2187 9y agoOne thing I don't understand is how Progressive Web Apps are different from Web Apps that I could add to the home screen on iOS for a long time already.
- fibo 9y agoI guess the main difference is that they work offline. Also, Chrome will ask user to add it to home screen.
- cm2187 9y agoiOS web apps worked in a similar way with a manifest file that was specifying all the files that were to be downloaded when the page was added to the home screen and how long they were meant to be cached. I remember having created one 5 years ago and the technology was probably around for longer. Maybe I miss something but the term Progressive Web App feels a bit like "Ajax", i.e. a marketing term for a technology that pre-existed as a way to promote it.
- denisw 9y agoService Workers (which are one of the core technologies behind the Progressive Web Apps label) go further than manifest files because they can deal with any kind of HTTP request (including e.g. calls to your REST API). Also, because they are code rather than static lists backed by hard-wired browser logic, you can implemnt any kind of caching strategy you want. That being said, Progressive Web Apps is pretty much just an umbrella term useful for marketing several new and upcoming browser APIs (Service Workers being one of them) and not really a thing in itself.
- crankylinuxuser 9y agoDamn, is that all they are? I kept seeing PWA PWA PWA, and the language to describe them are "tech news" quality descriptions like 'Website uses.. ALGORITHMS to make the site work!' I figured it wasn't talking about IPFS serverless apps, or paired with Ethereum. I didn't see the usual "Bitcoin/Ethereum/Blockchain" bait on these articles, so it couldn't have been that. It's good to know it's just a catch-all for the new APIs for caching and service workers.
- charlysl 9y agoYou have a point; my impression is that, just like Ajax, more than a new technology/s, it defines a web development model, a certain class of webs sites that result from combining certain technologies in a certain way that makes them have certain characteristics that make them distinctive.
- icebraining 9y agoThere was the Application Cache (which used a manifest), but it was removed and replaced by service workers.
- denisw 9y agoThey work offline, and can do background tasks such as showing notifications even while the app is not open (enabled by Service Workers). They are not _different_ from what iOS offers, they just take things to the next level.
- thinkMOAR 9y ago"Because a progressive web app has a more intimate user experience and because all network requests can be intercepted through service workers, it is imperative that the app be hosted over HTTPS to prevent man-in-the-middle attacks." Nicely written and layed out, though I would suggest to add a point that describes not including 3rd party hosted resources to prevent leaking user activity at third parties. Other way described, host all resources on your own site/url.
- seanwilson 9y agoIsn't HTTPS a hard requirement? https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API/Using_Service_Workers https://developer.mozilla.org/en-US/docs/Web/API/Service_Wor... > You’ll also need to serve your code via HTTPS — Service workers are restricted to running across HTTPS for security reasons."
- thinkMOAR 9y agoSure, and using https is a good thing, but that doesn't stop google etc from logging my request/ip requesting those font at that time etc for whatever purposes. I don't really want those parties to be aware of me using a particular service, or being online at a specific time etc. Certainly not just for a font.
- jmulho 9y agoPWA is an acryonym that you don't need to worry about, unless you buy in to the argument that web apps are lacking certain desirable characteristics of native mobile apps. Most of the PWA required characteristics are pretty obvious: "Progressive" and "Responsive" - not new ideas. "Discoverable", "Linkable", "App-like" - the classic problems of single-page web apps "Fresh" and "Safe" - as if some people desire apps that are stale and dangerous. Then there are the characteristics that set PWAs apart: "Connectivity-independent" (should work offline) - My app lets you check yesterday's weather. "Re-engageable" (receives push notifications when the browser is closed) - Because users really love push notifications. "Installable" (can be installed on the devices home screen) - Isn't there something called a link that does this? The PWA requriements seem to be as set of priorities for websites heavily influenced by the experience (pros and cons) of native mobile app development. As such, they seem out of touch with what should be the priorities for a web app.