Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

PWAs are not as good as real apps though.


I use them wherever I can because they allow me to block ads, analytics and other unpleasant elements like nudges, etc.

But I'm far from an expert. What would be the benefit of a non-pw app?


* You can use all the device APIs, not just the ones that have been exposed as web APIs.

* They're way faster and less janky.

* You don't to use endless workarounds to disable typical web behaviour when you don't want it.

PWAs are probably suitable for basic apps that just display information, e.g. an app for an event, or a pub or whatever. You would be insane to try and make a "real" app like Snapchat or Google Maps as a PWA though.


Google's Android UI toolkit is slower than Chrome building UI from HTML, sadly. So it's not a clear win for native apps (unless the native app is using HTML for UI, I guess).

That said, I don't think PWAs have a good way to get background data updates, which is unfortunate for apps that could work offline. You can't do a silent push to update data, last I checked, anyway. (Use case: I want a weather app that has current/recent data without loading when I start the app, because I often start the app in dead zones; also I want to have it background fetch the data when my location changes).


You mean slower to write? You're probably right for native Android. But I didn't say anything about development effort. Also it's definitely easier to get polished apps with Flutter than PWAs, so I think they'd still lose on that front.


No, I mean slower to run. It takes way too long for widget objects to be created, and you can only do it on the UI Thread, and you have to make most of your widgets when the app opens (otherwise there's nothing to see).

It was also slower to write for me, but I've never had a good time understanding UI toolkits, so I assume that's my own character flaw.


Erm. There's no way the web is faster than Android's native widgets or Flutter's. Your complaint about the UI thread makes no sense for a start - the web only has a UI thread.


I wish you were right. But for a reasonably simple (in my mind) weather UI, constructing the native Widgets on a cold start takes long enough that you get warnings for too much activity on the UI thread. But you can't build Widgets off the UI thread to get parallelism like you would do for other things that are slow, because Widgets have to be built on the UI thread if you want to show them.

A similar HTML layout shows up a ton faster in Chrome or a webview.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: