[HN Gopher] Microsoft and Google collaborate to make PWAs better
       ___________________________________________________________________
        
       Microsoft and Google collaborate to make PWAs better
        
       Author : judah
       Score  : 102 points
       Date   : 2020-07-10 15:54 UTC (7 hours ago)
        
 (HTM) web link (medium.com)
 (TXT) w3m dump (medium.com)
        
       | Abishek_Muthian wrote:
       | Nice, I like the way Microsoft chose to ignore the bad blood with
       | Google regarding its apps for Windows Phone and has embraced
       | Android.
       | 
       | PWA collaboration seems to be a step in the right direction,
       | especially since Edge is using chromium and Microsoft seems to be
       | building great PWA apps[1].
       | 
       | Although I'm not entirely sure about Google's end game with
       | PWA[2], I hope these kind of collaboration motivates industries
       | to build more PWA apps and put pressure on Apple to properly
       | support PWA APIs in Safari; then may be, just may be one day
       | we'll have fair grounds for new mobile operating systems to
       | compete without this Playstore/Appstore duopoly.
       | 
       | [1]https://www.bing.com/covid/
       | 
       | [2]https://news.ycombinator.com/item?id=23574697
        
         | brundolf wrote:
         | Microsoft has also heavily invested in the web ecosystem via
         | VSCode, TypeScript, and NPM. Not to mention that Office is now
         | chiefly a web app. My guess is that, among other things, they
         | see it as a way to cultivate fields adjacent to Azure and
         | attract customers to it.
        
         | osrec wrote:
         | I agree. Apple is stifling innovation by not supporting certain
         | APIs.
         | 
         | They need to stop doing this, or they will hurt themselves in
         | the long run. As it is, most people use Safari on iOS because
         | they are forced to - all other browsers on iOS are forced to
         | use WKWebView, which basically means they are wrappers around
         | Safari's view.
         | 
         | To this day, I can't understand why their users stand for this.
         | In this regard, Apple reminds me of a cult leader brainwashing
         | their followers into believing the cult's way is the best way.
         | Makes me a little sick actually.
        
           | EvanWinget wrote:
           | I wish that Apple had better support for PWAs and allowed
           | alternative rendering engines. The issue is that they are the
           | only major player in mobile that cares about user privacy,
           | and this allows them to maintain their monopoly for many
           | users.
           | 
           | If the option is Android + first-class support for PWAs vs.
           | Apple with limited support for PWAs, I'll go for the latter
           | every time.
        
             | lern_too_spel wrote:
             | The caring for privacy is only lip service. Consider that
             | on iOS, you cannot get your location without also sending
             | that location to Apple. You cannot install an app without
             | telling Apple what you installed. You cannot install your
             | own app on your device in a usable manner without giving
             | banking details to Apple. You cannot subscribe to a service
             | that has an associated app from that app without telling
             | Apple that you've subscribed to it. To show how much it
             | really cares, Apple moved Chinese users' data to allow the
             | CCP unfettered access.
             | 
             | Facebook also says it cares about privacy, and I consider
             | both claims to be equally believable.
        
           | bobbylarrybobby wrote:
           | 99.9% of users don't even know what a browser engine is. Why
           | would they care that they're using WebKit instead of gecko or
           | chromium? What they want is their bookmarks and such to sync
           | between browsers across devices, and Apple lets that work
           | just fine.
           | 
           | As an iPhone user I actually like that all phones use the
           | same engine. It prevents the "this website is better viewed
           | in <browser>" pop up from affecting mobile users (and in
           | particular it forces google to support a browser other than
           | chrome). In other words, the engine monoculture means that
           | making a site work for any iOS users means it will work for
           | every iOS user, which I as a user really appreciate.
        
           | alwillis wrote:
           | _In this regard, Apple reminds me of a cult leader
           | brainwashing their followers into believing the cult 's way
           | is the best way. Makes me a little sick actually._
           | 
           | Are you sure you aren't the one being brainwashed?
           | 
           | Why should anyone trust Google, since they make virtually all
           | of their revenue from ad tech, which means tracking users
           | across the web, even when they don't want to be. Advertisers
           | are Google's customers, not the users of their browsers or
           | operating systems.
           | 
           | And since Apple makes virtually all of their revenue from
           | selling devices and services, who's more credible on the
           | issue of privacy?
           | 
           | If we are to believe Apple cares about its users, then it
           | makes perfect sense why they don't allow slower, less power
           | efficient, less secure and less private web engines available
           | on iOS.
           | 
           | "But shouldn't this be up to the user?" some will say ask.
           | Yes, but to a point. There are already so many ways on the
           | web to shoot yourself in the foot. Apple is making it clear
           | that if you want a platform where there are no safeguards,
           | then this isn't the platform for you.
           | 
           | There are certainly a tiny, vocal minority of iOS users who
           | complain a lot about wanting the ability to shoot themselves
           | in the foot if they so choose. But Apple knows those aren't
           | their core users and their revenue show that.
           | 
           |  _They need to stop doing this, or they will hurt themselves
           | in the long run._
           | 
           | People have been saying this for many years and now they're
           | valued at over $1.5 trillion during an _economic collapse and
           | global pandemic_. Please tell me when the lack of web APIs
           | that would make it easier for their users to be tracked on
           | the web is going to have any material effect on them.
        
             | tapoxi wrote:
             | > If we are to believe Apple cares about its users, then it
             | makes perfect sense why they don't allow slower, less power
             | efficient, less secure and less private web engines
             | available on iOS.
             | 
             | Caring would mean giving people a choice. The real reason
             | is they're pivoting into services and other forms of
             | recurring revenue. They don't want people building
             | platform-independent apps that don't need Apple approval
             | and can bill outside of their 30% cut.
        
             | vially wrote:
             | > [...] why they don't allow slower, less power efficient,
             | less secure and less private web engines available on iOS
             | 
             | Do you have a source that shows how
             | chromium/edge/firefox/etc are inferior to safari in this
             | regard?
        
         | paxys wrote:
         | New leadership definitely helps. Satya seems to want to move
         | past the old way of doing things at Microsoft as aggressively
         | as possible.
        
       | mandeeeeeep wrote:
       | I remember when the microsoft app store on windows 8 were a bunch
       | of websites wrapped into an app. It really lowered the quality of
       | apps and the overall appeal of the windows app store.
       | 
       | That being said, how will PWAs get around the apple and google
       | requirements that apps downloadable from their stores where they
       | mention apps can't just be a website wrapped into an app?
        
         | judah wrote:
         | > "It really lowered the quality of apps and the overall appeal
         | of the windows app store...how will PWAs get around the apple
         | and google requirements that apps downloadable from their
         | stores where they mention apps can't just be a website wrapped
         | into an app"
         | 
         | Fair question. Google is implementing a new quality bar for
         | PWAs in their store. See this post[0] for details.
         | 
         | Microsoft also is doing work in this area. We're not ready to
         | share details, but will likely in the coming months.
         | 
         | With PWABuilder, our goal is to help devs build _quality_ PWAs:
         | ones with rich offline experiences, measurably great
         | performance, and apps that are functionally rich. This implies
         | something more than e.g. your resume packaged as a PWA. Towards
         | that end, PWABuilder analyzes your PWA and gives you feedback
         | on capabilities: encourages use of our rich web components[1],
         | helps you build a great offline experience[2], and more.
         | Whether your app is functionally useful (i.e. not just a
         | brochure) is a quality bar left to app stores themselves.
         | 
         | [0]: https://twitter.com/ChromiumDev/status/1276223634550353920
         | 
         | [1]: https://components.pwabuilder.com
         | 
         | [2]: https://www.pwabuilder.com/serviceworker
        
       | FiddlerClamp wrote:
       | I wonder if they're doing this for the Surface Duo launch.
        
         | pjmlp wrote:
         | They already had this with Edge and Windows Store.
         | 
         | https://developer.microsoft.com/en-us/windows/pwa/
         | 
         | The best part was that this way WinRT APIs are directly exposed
         | as browser APIs, no need for hybrid solutions.
         | 
         | This is just the next step using the Chrome based engine
         | instead.
        
         | judah wrote:
         | Fair question. Certainly Microsoft wants Duo to succeed. But
         | PWABuilder been pushing for PWAs in App Stores for years -- we
         | also support MacOS, Samsung Galaxy Store, Microsoft Store, and
         | others. (We're talking with Apple now to enable PWAs in iOS app
         | store as well.)
         | 
         | This collaboration with Google took place because Google
         | revamped their "PWAs in the Store" story. It used to be a very
         | basic story: a native app wrapping a web view that loads your
         | PWA. Those worked, but didn't support some modern APIs (e.g.
         | service worker, IIRC), didn't share cookies and login
         | information with the browser, and other problems.
         | 
         | Google revamped the story here to a more first-class approach
         | for PWAs in their Store. It's called "Trusted Web Activities."
         | 
         | And earlier this year, Google created Bubblewrap, a command
         | line tool to generate a proper Trusted Web Activity for
         | publishing in their Store. So we wanted to take advantage of
         | that new and better approach. That's really our reason for
         | collaboration here.
        
       | butz wrote:
       | Firefox needs to catch up on PWA support for desktop, Safari too.
        
         | judah wrote:
         | Yes. For Firefox desktop, here's the open case[0].
         | 
         | I and many others would love to see Firefox supporting
         | installable PWAs. :-)
         | 
         | [0]: https://bugzilla.mozilla.org/show_bug.cgi?id=1407202
        
         | input_sh wrote:
         | It's catching up slowly. I can save a website and open it in
         | its own window (at least on Firefox Beta).
         | 
         | What's missing is the ability to integrate it with my OS app
         | launcher, though I can get around that by adding my own
         | launcher. Something like:                   firefox
         | --ssb="https://news.ycombinator.com"
        
       | tie_ wrote:
       | Awesome! I hope this will put some pressure on Apple to add
       | support for critical PWA features (e.g. push notifications) to
       | iOS.
        
       | yeahgoodok wrote:
       | You seem to be heavily involved in the PWABuilder website. Can
       | you explain why the PWA needs to register a pushManager? I'd like
       | to publish my app without setting up push notifications.
        
         | judah wrote:
         | You don't need to register a push manager; only if you want to
         | send push notifications.
         | 
         | If you're referring to the PWABuilder analysis page, yeah, we
         | hear your feedback. We're going to be revamping that page in
         | the coming months. We'll deal with push notification score when
         | we do that.
        
       | HJain13 wrote:
       | As the author seems to be here, the links in the "Add features to
       | my PWA" section on pwabuilder website, don't seem to work for me.
        
         | judah wrote:
         | Thanks for the heads up. We just changed the URLs to that
         | yesterday. Fixing! In the meantime, you can access those
         | components here[0].
         | 
         | [0]: https://components.pwabuilder.com/
        
       | techntoke wrote:
       | Microsoft is now using Medium as their official blogging service?
        
         | judah wrote:
         | Author here. Some teams use it, including ours (PWABuilder).
        
           | ocdtrekkie wrote:
           | Off-topic, but... why?
           | 
           | Is it lower friction to start up your team's blog on Medium
           | versus the unified blog platform larger Microsoft teams tend
           | to use?
        
             | judah wrote:
             | PWABuilder is an open source project and builds cross
             | platform web apps. We feel Medium is a better fit than the
             | more corporate structured blogs. So far we've been pretty
             | happy with Medium.
             | 
             | That said, we have been mulling building our own blogging
             | platform using our own tools and web components for the
             | sake of dogfooding.
        
               | Nightshaxx wrote:
               | You might want to customize it a bit more to make it
               | clear this is an offical blog. For a few seconds when
               | reading this on mobile I was super confused if this was
               | official or just someone outside MS writing about it.
        
               | davrous wrote:
               | Thanks for this feedback. We're thinking about hosting a
               | blogging platform directly under pwabuilder.com. We've
               | got a small team that was mainly focused on writing new
               | features & code but we definitely need to better address
               | our blogging approach.
        
               | pjmlp wrote:
               | Something like this I would expect to be be part of Edge
               | Developer Blog, given https://developer.microsoft.com/en-
               | us/windows/pwa/
        
               | techntoke wrote:
               | Might I suggest looking into Hugo.
        
           | techntoke wrote:
           | That is like a team at Microsoft using Gmail as their email
           | provider.
        
             | ta17711771 wrote:
             | How?
        
             | vntok wrote:
             | What is the name of that blogging software Microsoft is
             | providing in competition with Medium?
        
               | techntoke wrote:
               | Microsoft uses a .NET static site generator for company
               | blogs similar to Hugo.
        
       | bob1029 wrote:
       | I am very excited about the idea of both of these monsters
       | actually getting behind PWA. One can only wonder about their
       | motivations (i.e. anti-trust heating up), but I will take
       | whatever I can get at this point.
       | 
       | To me, full support for PWA across all vendors' app stores would
       | represent a revolution in the ability for hobbyists and small
       | development shops to publish incredible applications.
       | 
       | Has HN not been published as a PWA to the various app stores yet?
       | This seems like an obvious use case and could serve as a great
       | example for other applications.
        
       | no_gravity wrote:
       | The main problem I see in PWAs these days is that they cannot
       | permanently store data on the device. As soon as the user deletes
       | their "browser data", all the data of the PWAs on the device is
       | lost too.
       | 
       | If PWAs would get their own permanent storage like other apps, it
       | would be a huge step forward.
        
         | burtonator wrote:
         | PWAs are designed with the web/cloud in mind. The permanent
         | data should be hosted in the cloud.
         | 
         | One of the issues is that storage in a PWA is done via
         | localStorage or IndexedDB... both of which aren't really
         | available outside of the browser.
         | 
         | Also, part of the benefit of a PWA is being able to be in
         | mobile devices and 'storage' there is different than on the
         | desktop.
        
         | bob1029 wrote:
         | For the PWAs I'd like to deploy, all I really need is 256 bits
         | of entropy to persist on each client. I am entirely done with
         | the ideology where I offload arbitrary storage and compute
         | concerns to client devices. Keeping it all on the server is so
         | much better in almost every way.
        
         | judah wrote:
         | Certainly it's true PWAs are subject to the user's desires
         | about browser data. I think that's a good thing for users.
         | 
         | PWAs usually store client-side data as a kind of cache:
         | cookies, local storage, service worker cache. Caches are not
         | meant to be permanent.
         | 
         | There may be room for improvement here, however. One might
         | imagine that clearing browser data shouldn't clear data for
         | installed PWAs. That's an argument worth further evaluation.
        
           | no_gravity wrote:
           | Can you elaborate why it could be a good thing for users?
           | 
           | Not being able to reliably store data on the device means
           | that PWAs have to send the users data over the internet and
           | store it on an external server. I would think users rather do
           | not like that.
           | 
           | I am only talking about installed PWAs here. Of course not
           | every website should be able to avoid having its cookies
           | deleted.
        
             | judah wrote:
             | "Good for users" was in the context of PWAs, not installed
             | PWAs. Clearly the user's expectation is that clearing
             | browsing data will clear data for web apps they navigate to
             | in the browser.
             | 
             | Installed PWAs is another question. I suspect users will be
             | surprised if they clear their browsing data only to
             | discover they have to login again to Twitter, for example.
             | 
             | I may raise this question to the Edge Chromium team. I'm
             | certain it's been raised before, but with Microsoft making
             | PWAs first-class on Windows[0], this becomes a more
             | prominent issue.
             | 
             | [0]: https://www.windowscentral.com/heres-how-microsoft-
             | making-ed...
        
               | no_gravity wrote:
               | Keeping the user logged in is not the issue. A PWA can
               | inject a unique ID into the installation in various ways.
               | 
               | The problem is the data. Imagine a text editor where all
               | your text documents are gone after you cleared the data
               | of a different app, the browser.
               | 
               | I wrote a fitness app as a PWA some time ago and its
               | pretty annoying to download all the instruction videos
               | again every time you clear your "browser data". Plus all
               | infos about which exercises you did and when is gone for
               | good of course.
        
               | judah wrote:
               | > "Imagine a text editor where all your text documents
               | are gone after you cleared the browser data"
               | 
               | One way to address that issue is the native file system
               | access APIs[0] coming soon, available today in Chrome
               | Canary and Edge Canary. There, you'd be able to save your
               | documents to the user's file system, just like a native
               | app would. Those files will be exempt from any browser
               | data clearing.
               | 
               | > all infos about which exercises you did and when is
               | gone for good of course.
               | 
               | Might be good to store that data on the server. I realize
               | not all PWAs have a proper backend server, but that
               | sounds like a good candidate.
               | 
               | [0]: https://bugs.chromium.org/p/chromium/issues/detail?i
               | d=853326
        
               | no_gravity wrote:
               | > Native File System API
               | 
               | Great, so there is light at the end of the tunnel!
               | 
               | > store that data on the server
               | 
               | Well, we talked about that already:
               | 
               | https://news.ycombinator.com/item?id=23793541
        
               | iggldiggl wrote:
               | I wonder how Mozilla will handle this, given that so far
               | they deemed file system access as too dangerous even for
               | extensions, nevermind random web pages...
        
               | judah wrote:
               | Also, as mentioned elsewhere in this thread, you may also
               | be interested in the Persistent Storage APIs:
               | https://web.dev/persistent-storage/
        
           | streptomycin wrote:
           | It's only marginally subject to the user's desires. I wrote a
           | fairly popular PWA and the most common questions users have
           | are...
           | 
           | "Why did all my data get deleted? How can I get it back?"
           | 
           | and
           | 
           | "Why is it saying the browser won't let me store more data?"
           | 
           | The user's desires are pretty clear in both cases, but it's
           | very unclear how the user can get what they want.
        
         | ta17711771 wrote:
         | So make them app_db side user config data, not local browser
         | database config data.
        
         | kinlan wrote:
         | You can request persistent storage that isn't cleared.
        
           | judah wrote:
           | Good point! I had forgotten about this.
           | 
           | kinlan is referring to this web API[0], which allows a PWA to
           | store data persistently.
           | 
           | [0]: https://web.dev/persistent-storage/
        
         | [deleted]
        
         | davrous wrote:
         | They can thanks to the Native File System API coming with
         | Project Fugu: https://web.dev/native-file-system/. Available
         | via origin trial for now but it should be soon released more
         | broadly.
        
       | yeahgoodok wrote:
       | What's the sense in publishing your PWA in the Play Store? Chrome
       | already prompts the user if they'd like to install a PWA shortcut
       | when you visit the site. I ask because it costs $25 and while I
       | have a lot of time on my hands I'm a cheap ass.
        
         | pjmlp wrote:
         | You can get access to native APIs that way, without the typical
         | hybrid approach.
        
         | burtonator wrote:
         | User behavior... We have a mobile PWA and literally all our
         | users are like "I went to the Android app store and you don't
         | have a mobile app so you suck" ... but the app already works in
         | the browser.
         | 
         | Discoverability is an issue too. If your users search for your
         | app keyword there then you're more easily found
        
         | butz wrote:
         | Discoverability. Users browsing Play Store might see your app
         | in related apps list or in search results. And you will get a
         | way to gather user feedback without hosting and moderating
         | forum or discussion board. Also, we are still at the point when
         | you tell user to download an app, one usually goes to Play/App
         | Store, not searches the web.
        
           | Abishek_Muthian wrote:
           | Also Businesses which has no use for an app, can claim 'We
           | have an app' as many like to do and now they can convert
           | their website to a publishable app more easily.
        
         | judah wrote:
         | > "What's the sense in publishing your PWA in the Store?
         | 
         | We've trained a generation of users to look for apps in app
         | stores. I blogged about this here[0], but having your PWA in
         | app stores means more users for your app.
         | 
         | [0]:
         | https://debuggerdotbreak.judahgabriel.com/2018/04/13/i-built...
        
           | yeahgoodok wrote:
           | I actually had just read this blog post prior to posting my
           | comment. There's a lot of good insight on HOW to publish but
           | I didn't see any compelling evidence on WHY to publish
           | (specific traffic numbers, etc).
        
             | judah wrote:
             | Check out the "Why" header and several paragraphs. I talk
             | about reasons why I published my own PWA in app stores:
             | some technical, but the big one being that's where the
             | users are.
        
       | partiallypro wrote:
       | I have a feeling that Microsoft is going to launch an "Edgebook"
       | competitor to Chromebook in the the future using Windows 10X.
       | This obviously is good for the ecosystem all around, for tablets,
       | phones, desktop, etc.
        
         | loudmax wrote:
         | Obviously good to have competition for Chrombebooks.
         | 
         | Now imagine how good it would be if there were competition on
         | the desktop market.
        
       ___________________________________________________________________
       (page generated 2020-07-10 23:01 UTC)