3 ms·
The biggest reason, as I see it, is that the web is a free market, whereas on Android's and iOS's app stores you're beholden to Google's and Apple's taxes, rest
by bad_user 3y ago
The biggest reason, as I see it, is that the web is a free market, whereas on Android's and iOS's app stores you're beholden to Google's and Apple's taxes, restrictions and whims.
The second reason is the resources available. Going web first means your app is instantly available everywhere, even if not perfect.
We can learn Android and iOS development for sure, but how about both? And have you ever seen shops with the same developers targeting both iOS and Android with their native stacks? I haven't. Besides the web, you're limited in available options for reusing existing code and knowledge, such as React Native, and using cross-platform toolkits may be more risky than targeting the open web.
- palata 3y ago> is that the web is a free market Controlled by Google with Chromium, right? > The second reason is the resources available. I guess that's the excuse, yes. But in my experience the native way is not necessarily more expensive. It's just faster to make a prototype in web, I suppose. And most apps end up being prototypes thrown into production nowadays. So yeah: it's cheaper, not better, but that's enough to win.
- bad_user 3y ago> Controlled by Google with Chromium, right? No. We may speak about a hypothetical future, but right now, that's false. You don't need to pay the 30% tax on all sales, you don't need permission to publish a web app, you don't need to obey the rules for what's permissible in an app store, you don't go through a review process, you don't get your appeal judged by a kangaroo court. And while there are ways for Google to ban you from Search or flag your website in Chrome, a vast majority of cases had to do with legal censorship requests, copyright law, or blocking malware. Google doesn't even have that much control because Chromium is FOSS, it already has contributors from companies with deep pockets, it can always be forked, which means Google has to play nice, like all FOSS stewards. Google has some control over the web, but their leeway is vastly overblown, and a bad rhetorical trick. This isn't even a matter of perspective, and if smart, educated individuals can have disagreements on such clear issues, we are in trouble. --- > But in my experience the native way is not necessarily more expensive. We don't share the same experience. If you're speaking about personal projects displaying some simple forms, sure, but all the software companies I know hire separate Android, and separate iOS developers, tripling the frontend cost, with the minimum being one Android developer and one iOS developer. I have in mind companies big or small, start-ups or commercial FOSS even. The one exception I know used React Native, with an emphasis on iOS, the Android experience being terrible.
- palata 3y ago> all the software companies I know hire separate Android, and separate iOS developers, tripling the frontend cost I think there is a mistake here, that management unfortunately systematically makes: writing one cross-platform app is not equivalent to writing one native app. The cost difference will depend a lot on the product. If your cross-platform devs spend double the time because they need to debug on the other platform they don't know so well, then... well it costs double the money. Cross-platform never has the same kind of community for a specific platform. Android experts tend to write native Android apps, and so do iOS experts. My experience with cross-platform is that they are written by people who are experts on neither. The mobile devs companies I know favor native apps, because in their experience it's not cheaper to use cross-platform frameworks, and the resulting apps are worse. Just like you seem to confirm: > The one exception I know used React Native, with an emphasis on iOS, the Android experience being terrible. The experience I have had in companies going cross-platform is that the employees they hire are not mobile devs, the app doesn't feel native at all, the debugging experience is terrible, and overall they struggle a lot. The only advantage I have seen (again, in my experience) with cross-platform frameworks is my "I told you so" moment with management, where whenever they complain about something I can say: "well you wanted cross-platform because you thought it was a fraction of the price, now you live with your choice". Hint: usually they don't like it.