Comment by Spoom

Comment by Spoom 3 days ago

17 replies

> Everybody will slowly move to "web only" as 30% would kill their ability to compete with anybody else.

Frankly, yes, please. I mean, I'm biased as my whole career is in web app development, but there are so many things these days that do not need a whole native app. They're just communicating with a server backend somewhere, using none of the unique native functionality of the phone (much of which is available in browser APIs these days anyway). I can block ads in a web app much more easily. It's much harder to do customer-hostile things like block screenshots in a web app.

Native apps definitely have a place, but I think they're very overused, mostly for reasons that benefit the business at the expense of the customer.

BiteCode_dev 3 days ago

Apple makes sure it's not practical.

You still can't have a "share to" target that is a web app on iOS. And the data your can store in local storage on safari is a joke.

Of course, forget about background tasks and integrated notifications.

In fact, even on Android you miss features with web apps, like widgets for quick actions, mapping actions to buttons and so on.

And no matter how good you cache things, the mobile browser will unload the app, and you will always get this friction when you load the web app on the new render you don't have on regular apps.

  • mircerlancerous 3 days ago

    Service workers solve the cache issue; web apps can run permanently offline after initial load. You may be a bit out of date on the state of the web.

    • BiteCode_dev 3 days ago

      No, I use them but loading and unloading the app in the tab still happens when the browser flushes the app from memory because the OS killed it or the browser eviction policy hits.

      This loading is not nearly as seamless as a regular app starting back up.

      For a regular app, you have the app loading, and the os cache helping with it. If you do your job half correctly, it loads as a block almost instantly.

      For a web app you have the web browser loading, the the display of the white viewport in a flash, then the app loading in the browser (with zero os cache to help with so it's slower). It needs then to render. Then restoring the scroll (which is a mess with a browser) and the state as much as you can but you are limited with persistence size so most content must be reloaded which means the layout is moving around. Not to mention JS in a browser is not nearly as performant as a regular app, so as your app grows, it gets worse.

xnyan 3 days ago

> I think they're very overused

I disagree, native apps on iOS have important abilities that no web application can match. The inability to control cache long-term is alone a dealbreaker if trying to create an experience with minimal friction.

  • mircerlancerous 3 days ago

    Service workers allow you to control cache in web apps; you may be a bit out of date.

    There are hardware APIs for some stuff that only works in native (cors, raw tcp), but 99% of apps don't need those.

    • benkaiser 3 days ago

      I think the parent may be referring to the fact that safari/webkit will evict all localstorage/indexeddb/caches etc after 7 days of not visiting a site. And apparently this now extends to PWAs making it a pretty big blog to building any infrequently accessed PWA that needs to persist user data locally.

      • mircerlancerous 20 hours ago

        I store my data in the service worker cache, so I guess I'm immune to this issue

  • pphysch 3 days ago

    Those same elevated controls are used to steal PII and sell to data brokers. Again, it's the companies that are trying to force apps on their users. If it were genuinely a much better UX, they wouldn't have to do that.

    • xnyan 3 days ago

      I don’t think you are correct, but I could be wrong. For example, can you replicate the functionality of TikTok - autoplay unmuted videos as the user scroll down to new videos? It’s the experience that the user expects.

      • rpdillon 3 days ago

        I've probably deleted 15 apps from my phone in the past year as I steadily move over to the web for everything.

        My chat agent, file transfer tool, Grubhub, Amazon, YouTube, news, weather are all deleted in favor of a set of armored browsers that suppress the trash and clean up the experience. Its been an amazing change, as those companies no longer get a free advertisement on the application grid of my phone, making my use of them much more intentional.

      • dwaite 3 days ago

        Sure, once the user interacts with the first video.

        If third party native apps were installed and run without user interaction the same as cross-origin redirects, I would expect the same limitations with native apps.

      • peaseagee 3 days ago

        I use FB via my web browser (Firefox on Android) and when I look at Shorts, it has this exact functionality. Web browsers on mobile can do this, clearly.

        • hermanzegerman 3 days ago

          The Android Browser isn't as crippled as the iOS one. Watch a full screen video on Safari and tap a few times on different places on the screen and you will get a notification about "Typing is not allowed in Full-Screen" or some other nonsense

      • kcrwfrd_ 3 days ago

        Yes I literally worked on a PWA with this exact feature.

        I believe you can see it working on TikTok web as well.

        You just can’t have the first video unmuted on initial load, although I wonder if this can be relaxed when user installs a PWA.

      • mrguyorama 3 days ago

        I'm sorry but why do you think this can't be done in a website?

        • [removed] an hour ago
          [deleted]
jama211 2 days ago

As a user please for the love of god to not make me use a stupid mobile browser for everything. Native apps are so much better.