4 ms·
App developers: what percentage of apps provide no more functionality than just going to your website, but exist only to make it easier for you to collect data
by monochromatic 9y ago
App developers: what percentage of apps provide no more functionality than just going to your website, but exist only to make it easier for you to collect data about me?
- potatolicious 9y agoApp developer here: there are two answers to that question, and one myth to dispel. First the myth: apps do not necessarily collect more data about you. In fact as far as sketchy advertisement tracking goes, the web is far more pernicious and gives away much more of your data than native apps. For one thing, on websites ad networks track not only what you do on that website, but can track you across sites. This is banned in native-land on pain of Apple swinging a very large banhammer on you. App developers are largely only collecting analytics on your actions in-app, and not feeding it into a larger ad network. Even web views from inside the app (which are often used to show ads) do not have access to the cookies in your standard browser, making cross-app tracking considerably more difficult. Anyways, to answer your question: 1 - On a strict numerical basis, most apps (70%+?) provide no significant improvement over visiting the website and are largely pointless. 2 - When weighted by installations or usage, most apps provide dramatic improvements over visiting the website and users would significantly suffer if forced into a website-only option. Which is I guess the obfuscated way of saying: most apps are pointless, but nobody installs them anyway, they just languish in the far corners of the App Store. The apps people tend to give a shit about (see: Facebook, Google Maps, Spotify, etc) tend to have a significant amount of functionality that is only possible (or only practical) in a native app, and would be significantly worse as a website.
- monochromatic 9y agoInteresting. What sort of functionality is possible in, say, the Facebook app as compared to the mobile website?
- potatolicious 9y agoHmm, where to even start? Some off the top of my head: - Web doesn't have access to the camera. Uploading a photo to Facebook is easy because you can launch the camera directly in-app, without having to use a separate camera app, save the image to disk locally, and then picking it for upload. Importantly also is the rise of photo filters, which would be impossible to live preview on a website. - Importantly also, there is an increase in live streaming, which would be impossible from a mobile site. - Uploading photos/videos is also easy because you can leave the app as soon as the upload begins, the upload will be finished in the background. This is flat-out impossible via a mobile website. With a mobile site you'd at least have to keep the app around and be unable to do anything else with your phone until any uploads are complete. - Offline/semi-offline interactions are actually possible in a native app. The nature of phones is that it can be out of connectivity, or be in areas with unreliable connectivity, and should still function. With a native app actions performed while offline/marginally online (posting, commenting, liking, etc) can be cached and performed in the background once the phone has better connectivity. A website cannot do this. - On the consumption side, there are many advantages to the native app: - The incremental page loads that FB does (and Twitter, and Instagram, and everone else) bog down a browser quickly. Laying out the entire DOM is extremely resource intensive and a major source of poor scrolling performance. Even on modern desktops, try scrolling down a bunch of pages in your FB feed (or Twitter feed), and watch the performance tank quickly until scrolling is like pulling teeth. The native apps are immune to this kind of limitation, since there is no DOM and only what's on screen is actively being laid out (all off-screen content has no impact on render performance). - No whole-DOM layout also means that the app is more responsive on launch. In app dev we have a concept known as the "cold start time" - which is the latency between tapping on an app's icon and having the app be fully interactive and ready for the user. Webapps do a lot worse in this regard for many reasons: needing to transmit the entire DOM, JS performance issues, layout CPU consumption, etc, that native apps are less susceptible to, or fully immune to. - In bandwidth constrained situations (which is, well, a lot of the world), a native app passing purely semantic data consumes a lot less data than a webapp that needs to transmit semantic and presentational data. A JSON or Protobuf payload is a lot smaller than a HTML/JS/CSS payload. - Media is more effectively fetched in native, which is aware of cell vs. wifi, and can customize the resolution/size of content fetched based on network conditions. The browser provides no access to the primitives that it would take to implement this. - Videos can be inlined in the stream, which is impossible on most mobile browsers, allowing users to quickly preview video content before deciding whether or not to watch it.