Comment by interpol_p
9 years ago
Yes but supporting the feature encourages developers to make web apps. Why would you want to encourage that?
9 years ago
Yes but supporting the feature encourages developers to make web apps. Why would you want to encourage that?
Why wouldn't you want that? PWAs are seamless (no downloading/installing), allow native features, can be saved offline for later, run in a secure sandbox, and are completely open and cross-platform.
I don't really value cross-platform in the sense that the code I write for platform A can run on platform B. At least for applications.
I think it's valuable for games. Unity and Unreal engine have demonstrated that.
Applications necessarily intersect with the underlying platform in a way which games do not. Accessibility, system-wide services (e.g., dictionary), system-wide interactions (e.g., drag and drop). There are reasons I choose macOS, and when applications embrace the design philosophy and features of the platform they become great applications. PWAs will not do this to the same extent (and if they try to, the effort would be so significant they might as well go native).
I feel strongly that the platforms you develop for should be the platforms you love using. And so the things you develop should bring out the best and most valuable features of those platforms.
I would rather encourage developers to embrace each platform's strengths. I understand that many companies might not care — they want as many users as possible as cheaply as possible. But I do not appreciate that attitude at all.
And that was such a great experience with Java applets....
False equivalence. The points I listed above were not true for Java applets.
Applets were not seamless (requiring a plugin to be installed), did not allow most native features, and ran in anything but a secure sandbox.
They were open (by nature of the JVM), and cross-platform, but that's it.
I'm pretty sure it boils down to "we're fancy iOS users who want nothing to do with those peasants over in the Android world". It seems like the majority of the comments opposing web apps oppose them because they're cross-platform and not written specifically for their chosen platform, which is a very silly stance to have.
There are some more coherent arguments in play, don't get me wrong (in particular, the argument that web apps are a bastardization of what the World Wide Web was intended to be for; I agree with that wholeheartedly), but a lot of the rhetoric around here really reeks of elitism.
I've written quite a few apps for both iOS and Android.
While I'm not an Android user, when I build an Android app I try to embrace the platform's strengths. I try to understand best practice, and follow the designs encouraged by Google. The resulting apps often look and behave completely differently between iOS and Android because the platforms are so different.
I have mixed opinions about a lot of Android's design philosophy, but there's no way I would build an Android app that didn't conform to the platform. Because I expect Android users enjoy consistency too.
There's probably some elitism in there. But there still is no web app on macOS or iOS that feels good, consistent and integrated in the same way that a good native app feels.
4 replies →
It's not. I feel the same way as 'interpol_p, and I'm an Windows/Linux + Android user.
The webapp ecosystem is making the same class of mistakes pure-Java UIs used to. They assume e.g. that a textbox is just a rectangle on a screen that you can type stuff in. But it's not just that; it's much more.
Each operating system has a large set of default UI behaviours and idiosyncrasies. Continuing the example, a native textbox may be a clickable rectangle accepting keyboard input, but it also has a set of well-defined behaviours for Tab-cycling, text navigation, right-click handling, keyboard shortcut handling, cut/copy/paste handling, etc. Web applications fail to replicate that functionality completely and consistently. And platform consistency is a feature - one that many users value.
On top of that add resource waste (spinning up a webview and parsing heavy markup languages just to show a bunch of buttons) and web-specific failure modes - many vendors do not care about making their webapp work correctly when connectivity is limited, spotty or lacking. Hence the occasional full-screen 404 or 501 or connection-lost error when you press a button.
I want my applications to be performant, platform-consistent and interoperable. Web apps fail at all three, hence I avoid them like the plague, and discourage everyone from developing them.
About the only benefit I, as a pro user, I get from web application is the relative ease one can reverse-engineer their backend APIs with.
3 replies →
I'm an Android user, and I don't want these either. Mainly because they don't integrate with the native look & feel of the platform. And when a dev tries to, then inevitably make it look like iOS, and ignores Android look & feel.
"It seems like the majority of the comments opposing web apps oppose them because they're cross-platform and not written specifically for their chosen platform, which is a very silly stance to have."
But it's not. By not being written specifically for the platform, everyone is just getting a least common denominator approach. Nobody is getting anything that integrates with their platform. Nobody is getting anything that embraces what makes the platform special, or good.
"but a lot of the rhetoric around here really reeks of elitism."
No, it's more that we want developers to actually make an effort to embrace the platform they're trying to work on. And, quite frankly, use something that's not JavaScript. Learn a second language.
Remember how Java applets and Java desktop applications took over the world?
A big part of the reason they didn't is the reason that people dislike these fake-native web-apps; they just don't feel right.
1 reply →