3 ms·
> all those forums and travel booking websites that don't offer me a choice. So you would prefer to have the friction of an app store, or even just a platform-
by mwcampbell 11y ago
> all those forums and travel booking websites that don't offer me a choice.
So you would prefer to have the friction of an app store, or even just a platform-specific native executable, for every little service? And of course there's also the friction on the developer side, especially when submitting to app stores which act as gatekeepers.
Sure, native apps have better performance and often a better user experience all around, especially mobile apps. But your comment about forums and travel booking websites has got me thinking that we should really try to solve the performance and UX issues of the web platform rather than retreat to native apps.
Edit: Yes, I've taken both sides on the web versus native debate. I recently posted that JavaScript-based mobile web apps are second-class compared to AOT-compiled native mobile apps. I attribute my latest flip-flop to the fact that just last night I went through the tedious process of submitting a new app to the iOS App Store -- an app that could probably have been a web app. So now I want the web to win.
- pjmlp 11y ago> So you would prefer to have the friction of an app store, or even just a platform-specific native executable, for every little service? Yes, every time I have the option to do so.
- mwcampbell 11y agoWhy exactly do you prefer a native app whenever you have the option?
- pjmlp 11y agoExecution speed and integration with OS features.
- MereInterest 11y agoIf I have an executable that is running on my system, I know that it will continue to run tomorrow. If I am using a web service, I don't know whether it will continue to exist. If it is running locally, I can manage my own backups, my own settings.
- SyneRyder 11y agoI'd prefer this in many cases as well. I can use web versions of Evernote, Pocket, OneDrive, Email, but I would much rather use their platform specific native executables. It's a better, faster experience that integrates better with the device I'm using. I could watch Netflix in my web browser, but the Windows 10 app is faster & smoother. It even irritates me when the Kindle Android App drops me out to a web browser to browse the store & buy more books, instead of just letting me do it all from within the app.
- pdkl95 11y ago> So you would prefer to have the friction of an app store, or even just a platform-specific native executable What friction? apt-get install $PACKAGE_NAME Native apps will always be far superior to the web, because the web browser (at least, any with that claims to care about security) is required to maintain a separation between the "page" and the browser that frames the page, or you trivially enable "phishing" and other UI-impersonation attacks. Native has far more flexibility. Personally, I absolutely hate the jitter every time Javascript (or most other VMs) decides to GC for 50ms or more, and will go out of my way to avoid it. > app stores which act as gatekeepers So stop supporting those gatekeepers, both as a developer and as a user. As long as people keep giving them money and market share, they will continue to gain power as gatekeeprs. > try to solve the performance and UX issues of the web platform That would require defining a new platform that isn't the web. The web is a document-based design, and while a lot of clever tricks have been found that let people pretend it's something else, all of the core components of the web (HTML, etc) are designed for documents. This is good - we need a way to freely exchange documents. If you want a way to develop applications that can be distributed as easily as documents are on the web, it would probably be a good idea to create some VM base portable application format that was actually free of stuff like HTML/CSS. An HTML replacement that worked more like a GUI toolkit would be much nicer for app development.
- pcwalton 11y ago> because the web browser (at least, any with that claims to care about security) is required to maintain a separation between the "page" and the browser that frames the page, or you trivially enable "phishing" and other UI-impersonation attacks. Native has far more flexibility. I'm not going to deny that native apps have more power to interact with hardware resources—though I would question whether that's a good thing for most applications I use—but this isn't a good place to draw a distinction. Window managers have to maintain the same security guarantees (look at the trickiness behind the impersonation protection in Windows Vista's UAC for example), and that's all the browser is in this context: a compositing window manager. > If you want a way to develop applications that can be distributed as easily as documents are on the web, it would probably be a good idea to create some VM base portable application format that was actually free of stuff like HTML/CSS. An HTML replacement that worked more like a GUI toolkit would be much nicer for app development. Besides the fact that this is unrealistic, I don't see how this would end up significantly better than the modern Web platform. JS is already faster than Objective-C in method dispatch. Use flexbox and the "document-oriented" layout goes away. Use simple graphics and your painting will be quick. Honestly, speaking as someone who's measured this stuff a lot, the main thing that's slow in the Web that native doesn't have is style recalculation and layout. This is not insignificant, but I think any portable application delivery platform needs both of these. Native often gets by with hardcoded style and pixel layouts, but that obviously doesn't work on anything that has to run on arbitrarily many devices. Add in restyling and you pay a performance penalty, but redesigning the system from scratch isn't going to eliminate that penalty. It's a common meme that "just reinvent the Web around applications and it'll be faster", but I have yet to see specific suggestions that would both preserve portability and aren't implementable in the existing Web platform. That's not to say browsers of today are optimally architected, of course.
- izacus 11y agoHuh? Do you really think that a closed app store is the only way of distributing applications? Did you sleep through last 30 years of computing?
- mwcampbell 11y ago> Did you sleep through last 30 years of computing? No, but mobile devices are overtaking PCs for a lot of computing activities, and on the popular mobile platforms, the only choices are a closed app store or the web.