I get that Google pushes for PWAs because that's how they conquer the OS world. But why do individuals push for that? Because they don't know anything other than webtech and don't want to learn? Have a look at Kotlin and Swift guys, it's kinda cool!
I get that Google pushes for PWAs because that's how they conquer the OS world. But why do individuals push for that? Because they don't know anything other than webtech and don't want to learn? Have a look at Kotlin and Swift guys, it's kinda cool!
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.
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.
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.
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.
Cross-platform usually sucks in some way. If the app is not worse, the development is: "write once, debug everywhere".
Web is solving that by forcing everybody to use the same (Google-controlled) renderer, so that there is no need for cross-platform anymore: just use the Google thing. I don't want that.
There's really not much reason to not use a browser, the compatibility issues are pretty much a thing of the past on any browser, unless you're doing something esoteric. Installing a special app should be unusual.
That's what I said.
> the compatibility issues are pretty much a thing of the past on any browser
Because there is only one meaningful browser left: Chromium. It is not a solution to cross-platform, it is just pushing for a monopoly. Just like a few years ago you could have been advocating for supporting exclusively Internet Explorer: that solves the compatibility issues too.
Now PWAs are not trying to kill other browsers (it's done already), but other platforms. That's just the next step.
Well it was following the "IE standards". The difference is only rhetoric to avoid antitrust. Google dominates the standards. Edge is Chromium, Mozilla is maintained in survival mode by Google.
> Chrome does, pretty religiously
I wouldn't call it "religious" when Chrome follows stuff Google wants and Mozilla/Apple don't want.
> there are a number of open source browsers based on Chrome
Based on Chromium, you mean? That's still dominated by Google.
But you're just putting yourself out on an increasingly brittle limb to defend native apps, which imo work against user interests.
Again, Chromium-based browsers don't count if their contribution to the codebase is marginal.
Then Google implements stuff that Apple and Mozilla disagree with, and devs still rely on it (e.g. web bluetooth). Not even mentioning that Mozilla is a joke kept alive by Google for antitrust reasons.
But even a Chromium based browser setting is better than some random app that could have been a web page.
Don't you think you are slightly underestimating the complexity of a browser that works with 99.9999% of webpages?
The PWA functionality will be fairly simple, mostly around reminders and badges.
Because we don't have the resources to build a native app for every OS out there.
We're not lazy but limited by our mortality.
> Because they don't know anything other than webtech and don't want to learn?
Are you sure you need three or more platforms? In my experience, when I ask small companies what they need, they say "everything". If I listen to them, they even need to run on a Gameboy. Then most startups fail, so apparently the problem was not the number of platforms.
It feels like many times, selecting the platforms may be fine.
Doesn't make it necessary. Just like analytics, actually: people like to have them, yet most of the time they don't do anything meaningful with them.
(Don't get me wrong: you are perfectly entitled to sell something people like, and people love spending time looking at analytics)
Web is free and people can build and release web apps they want.
Android is free, isn't it? Most smartphones use Android.
Then writing Desktop apps is free, too.