Hacker News new | ask | show | jobs
by watty 2821 days ago
Developing for the browser is leaner but it's the opposite for end-users. I hope PWAs are the future as well but native is still king for the time being.
2 comments

As a hypothetical user who doesn’t post on niche tech forums, I totally prefer a native app over a web app

It’s pretty

It’s fast

It’s not stuttery-stoppy

I can swipe back and forth between pages without waiting 4 seconds for everything to display, and then inevitably move around right before I fucking tap

It’s on the app store

I can use it instantly.

I can remove it instantly.

I don’t know what sandboxing is

I don’t care about privacy

There are convenient share buttons

I can use it on the single device I use regularly

I can screenshot it

I can unfortunately change the style by updating

It can use my battery when it’s closed? Wait wha-

ooh notification

...

I’m gonna go use facebook now like a normal person, later nerds

Every time I try to use Facebook app - on any platform - it breaks my workflow about 5 minutes in, because I can't post a link to a group (or another comment) in a comment.

Some kinds of things are just a better fit for the web.

I prefer native apps over web apps, but for most things I vastly prefer a website to both of those. I shouldn't have to install an app for every single thing I want to use, especially if I only use the thing once a week or so.
That is what instant apps are for.
As far as I can tell instant apps are just websites that are conveniently (for Google) locked into Googles ecosystem.
As a user, I totally prefer a web app over a native app.

Man .. don't even get me started .. ok, here we go:

I can use it instantly.

I can remove it instantly.

The sandboxing is much better.

The privacy is much better.

I can link to it from wherever I like.

I can use it on all my devices.

I can copy text and images.

I can change the style (I often enlarge the font for example).

It can not use my battery / camera / phone when it's closed.

...

I feel like I can go on forever.

Do they work offline?
They can, yes. Some native apps don't work offline too.
It's actually harder to make a native app offline readable if it's entity relationship is complex.
Do you use a web app or a native app for YouTube?
Why, good you asked: a native app called NewPipe [1] which eats Youtube URL's and plays videos (and allows the download of such), no more - and that includes no ads - and no less. It only sends such data as needed to get the video. Lately it has started to support Soundcloud as well, I have not tried this yet.

[1] https://newpipe.schabi.org/

I've started using the YouTube website on iOS because it uses the native video player and is ad-free then (some people put an ad-break every few minutes on documentaries for example which is super annoying)
I switched to firefox on my android for both Facebook and Twitter. So far, I've had very little downside to this.
+1 dropped facebook native app for their web version. Never looked back.

I think the answer is some apps are better on web, others on native.

Videos / Music / Games / Email / Messaging are better native. For actual reading of content (HN / Reddit / Twitter / Facebook ...etc) I find better on the web.

I open 2 web apps at the same time, and the phone crashes (all RAM exhausted). I open a web app, and it lags horribly for minutes before becoming even semi-usable.

This is on a Nexus 5X, using stock Android.

Web apps are a complete joke right now. Entirely useless. I always install native apps, if available — even if I know I’ll uninstall it 5 minutes later — because the alternative is entirely unusable on my device.

That does not make sense. Web apps do not consume more resources then websites. And usually less then native apps. I never had them crash any phone.
A web application burning through a ton of JavaScript and a very complex DOM can very easily start demanding a lot of CPU and RAM.

I've never had a browser crash a phone, but having the phone start to immediately feel sluggish after opening something like a moderately sized GitHub pull request--that's certainly a thing.

Perhaps android apps are relatively resource intensive or inefficient, but in terms of "web apps" like SPAs vs server rendered websites, web apps are doing more on the client. They inherently use more resources. Electron apps don't tend to have awful performance characteristics on the desktop just because they can't share the underlying Chrome instance, opening the same apps (like Slack) in the browser is only marginally better. And if native resource consumption on Android is really that bad, that would be pretty unique for that platform. iOS and desktop platforms definitely have much more efficient native apps than web apps.

However making it more difficult to crash the device is a definite advantage, you're right about that. Although I very rarely have native apps crash my devices anyways. I can't remember a time it's happened on my phone, and on my desktop it's usually a device driver issue combined with a game that causes an issue. Definitely an edge case and not something I encounter with native applications in general.

Too many websites at the same time cause the same issue.

If I open a site like cnn.com without an adblocker, all apps running in background (even e.g. spotify if I'm listening to music) are force closed because the phone runs low on RAM.

Every website or web app I've used so far has used > 100-200M RAM, while a well developed Android app stays below 20-50M.

My phone has 2GB RAM, 1GB is used by the OS, 500-800M are used by Google Play Services, and a web browser with 1-2 tabs takes another 200M of RAM.

As soon as I open a website any more complex than HN, everything feels sluggish.

Agreed. The DOM and JavaScript, as used by many heavy websites and web apps, are heavy.

On the other hand, JavaScript in a more constrained environment--React Native, for example--is a lot more reasonable. Still heavier than an Android app, but not so heavy that it kills processes except on very downmarket phones.

> The privacy is much better. Is it? I strongly challenge that at least in the iOS ecosystem. Sandboxing and privacy on the web is not as strong in many cases as iOS.