4 ms·
No they don't have a choice in the mobile world. Google and apple defacto decide the distribution model and place a lot of restrictions on how you can distribu
by novok 4y ago
No they don't have a choice in the mobile world. Google and apple defacto decide the distribution model and place a lot of restrictions on how you can distribute updates to your app, forcing people into a specific model on how to do app updates. Certain web features that would make web apps significantly more competitive to mobile apps stay unimplemented on the apple platforms, which if you follow some webdevs on twitter see them complain constantly about.
Apple explicitly does not allow unreviewed binary code downloads, but do allow a sort of gimped version with javascript. If apps could manage their own update cycles and methods, you'd be seeing a lot more of this dynamic behavior today vs. the half solutions that are things like react native and homegrown equivalent. I wouldn't be surprised if android has similar restrictions here and there.
Also further more, it's not really devs / engineers that want these instant testing cycles, but PMs and businesses. Businesses want it because it lets them execute faster and make more money via faster A/B test cycles and lose less money from client side outages via much faster rollbacks. The cultural appetite for this is voracious and it's because of that business side demand I don't see it going away. Eventually software is going to need a internet connection whether you like it or not and there won't really be any such thing as version numbers anymore for the vast majority of software.
It's basically Darwinian evolution, because it makes more money and users don't really think about versions or updates that much at all unless special marketing is done to make differentiation of versions. Like evolution, the solution might be unpleasant, but it stays in place if it is effective.
- mike_hearn 4y agoPeople do have a choice on mobile. They can make web apps or native apps and they choose native. You can blame Apple for not implementing every last web standard, but Google definitely do, and people make native Android apps in preference to web apps too. So clearly the web isn't all that competitive when put up against motivated OS teams. Windows hasn't had that for a long time, nor has Linux or macOS (not motivated in the right way) so the Chrome guys have taken over there. Still, it's just not the case that the web would win if not for Apple. And "I wouldn't be surprised if android has similar restrictions here and there", well, be surprised. Android allows side-loading as a condition of licensing it, which allows self-updating apps. Telegram do this for example. They've also added features for app streaming to the Play Store and so on. Fast rollouts and A/B testing isn't something specific to the web, it just happens to be a consequence of how it works. As for client side outages, well, that's really something that we associate with web apps. I've never had a sudden outage of a desktop or mobile app unless it was just a frontend for a service that went away. Updates can contain bugs but updates so broken they take everything down - no, doesn't happen, gets picked up in testing and/or during the incremental rollout because not everyone updates at once. Whereas it happens to web apps pretty regularly.