The Decline of Mobile Development
Mobile development for Android and iOS is becoming more challenging due to frequent OS updates, high costs, and complex requirements, prompting developers to shift towards web development for greater ease and productivity.
Read original articleMobile development for Android and iOS is increasingly challenging, leading many developers to abandon these platforms. Frequent OS updates introduce new requirements that complicate codebases and inflate development costs, as developers must ensure compliance to avoid punitive actions against their apps. Unlike web development, where updates are less frequently mandated, mobile developers face constant pressure to adapt to new standards, often resulting in convoluted code and unnecessary complexity. This frustration is compounded by long build times and testing difficulties, prompting some developers to transition to web development, which they find more enjoyable and productive. The dominance of Google and Apple in the mobile space creates a restrictive environment, where developers must navigate a maze of rules and monetization models that benefit these tech giants, including a 30% revenue cut from in-app purchases. As a result, many developers are reconsidering their commitment to mobile platforms, seeking alternatives that offer greater freedom and less complexity. The lack of innovation in mobile development over the past decade further exacerbates this trend, as developers grow weary of the constant hurdles and diminishing excitement associated with mobile app creation. Ultimately, the appeal of web development, with its more straightforward processes and quicker feedback loops, is drawing developers away from the increasingly burdensome mobile landscape.
Related
It is a pain to deal with their App Store, but it isn't intolerable. I don't charge for my apps, but I understand that the Apple ecosystem is very lucrative for devs that do.
> causing codebases to become complicated and littered with if/then evaluations for various SDKs
I have found that I almost never have to do this, and when I do, it's usually a bad code smell. Part of the reason, is that I develop native, for one platform at a time. It might be another story, entirely, if I have to develop for multiple ones.
I just got contacted by a friend, wrt an ObjC app that has been deprecated for over a decade. He reports that it still works fine, on iOS18.
Many years ago, I spent a few months, learning Android. The thing that really put me off, was the Android Pizza of Death. That's the pie chart that describes the percentage of users, running various Android versions.
It was sobering.
Apple basically allows me to write support for the current OS, and support just one back. The app I'm in the process of releasing now, works in iOS 15, but I am declaring support starting at 16, and it works fine in 18.
The issue with mobile development is that web apps and PWAs can cover a lot of the same ground now and getting people to install new native apps is really hard.
I know. Sometimes it makes sense. Sometimes it is easier. Sometimes it is for work, and it is a requirement. Often it could be a page, and is not just to have access to your device data.
For myself? Most of the programs I write are pages. Works on any device, Writing guis is not a problem, there are a ton of useful frameworks. There is no need for synchronizing data between devices, not need to install it on client devices etc. Etc.
Ask HN: Why is Android Development so difficult/complex? (compared to Web and Desktop)
https://news.ycombinator.com/item?id=40742719
Ask HN: Am I crazy or is Android development awful?
Probably significant in terms of speed of development, time spent maintenance projects, etc
WSL was good enough to keep me on Windows, but I am back on iPhone one generation later (android was not my jam).
If I had unlimited time, I’d be tinkering on PWAs (super glad to see rails pushing in that direction).
I have never developed a mobile app, so I may be oversimplifying it. Let me know if you have been down this path and agree/disagree.
I haven't ported it to android, but I expect it to be simple too.
What I don't understand from the article is the moving goalposts. I had one threat of store removal because of a lack of sales and updates, so I found some stuff I didn't need to ship and removed it and pushed that as an update. Not so. I think it has been in the store 4 years or so now, so this doesn't seem too much work. I guess it could be churn in the areas that I deliberately avoid (e.g. I have no networking and only use the screen and audio out)