Ask HN: What Is the State of App Development in 2026?
46
kkarakoram about 4 hours ago 38 comments
FR version is available. Content is displayed in original English for accuracy.
What is going on in the world of pure IOS/Android app development?
How is AI/LLMs affecting app development? what has changed in App Development in the past 2-5 years? What does a career in only app development look like nowadays?
Thank you!

Discussion (38 Comments)Read Original on HackerNews
It's not as dire as you might think. To software developers, the "AI revolution" is largely what the "desktop publishing revolution" was to designers. Yes, it meant the "riff raff" could theoretically play with the pros. Some percentage of the riff raff became pros. Most of the pros eventually adopted the tools and techniques used by the riff raff. Some of the pros didn't survive the transition and happily retired, taking their rubylith, Letraset type, and rubber cement with them.
The silver lining is that most of a software engineer's job isn't coding, it's thinking. LLMs can't do that, and we're not getting to AGI with current AI architectures. LLMs can amplify thinking, and an LLM in the hands of a software engineer or architect is at least two orders of magnitude more effective than it can be in the hands of a vibe coder. As LLMs get better for vibe coders, they also get better for pros.
One can argue that, by the end of the decade, hand-coded [your language of choice] may be considered as unnecessary as hand-coded assembly has been for decades. But coding in modern languages is already 7-8 levels of abstraction above the metal. One more level of abstraction is not the death of software engineering, IMO.
The fear for me comes with that initial creation, which is a fear i have across a large amount of things for AI "disruption". Just floods of bad products at rates that are insane, same type of problem that exists on github of just garbage prs, and same thing for any reddit/twitter/even hn type comment thread.
- 90% of everything is vibe-coded crap
- 90% of what isn't vibe-coded crap is also crap
ergo, the small percentage which is left is not crap.
I finally just got an Android app shipped to the Play Store for https://wordtrak.com, after several weeks of back and forth with what I am assuming are mostly robots managing the Google side of this. I was stunned to see how far Android distribution has come (and especially that all changes are now reviewed).
What I was most surprised by though, was all of the ridiculous red tape around the actual process of getting an app listed. Best example: I had to confirm I didn't change the outcome of the Korean War in order to list on Play Store in Korea.
In any case I got most of this done with Claude and expo.dev - it was a huge relief to let Claude Code churn through this and not have to worry about spending months re-learning frameworks and ecosystems.
The app itself is fairly straightforward, but it included some intermediate complexity in terms of audio capture and calling local models. Both something I'd never done, and as not-a-mac dev something I probably wouldn't have attempted for a side-project while I'm meant to be bootstrapping my own thing.
I didn't touch a line of code, and I was blown away. I'm so impressed in fact that I'm predicting we'll see a resurgence in native apps in the near future. By far the worst (and slowest) part of the process is having to deal with the App Store, and the ridiculous hoops you have to jump through to get past review.
It’s not super onerous, but it is much more annoying than the theoretical alternative of allowing people to install software of their choosing on their hardware (i.e. download the binary and run it)
For example the iOS app failed first time as I accidentally used "Free" in the app name, and the app declared support for UIBackgroundModes but they were "unable to locate any features that require persistent audio". The dictation keyboard switched you to the app, then if you left would keep recording... fairly basic and obvious stuff. I could have either gone back and argued the case, or simply rip it out which I opted for.
It's now failed again because: The keyboard extension does not provide any functionality when the "Full Access" setting is toggled off.
Well no, hardly my fault you've locked down the usefulness of third-party keyboards, but now I've added a full keyboard in there so it's a bit more useful without that access. I don't expect any users to ever see this. Admittedly this was more frustrating when that would be a couple days work, not just a quick prompt, to fix.
Good luck with your app. Don't worry too much, you can generally work through their issues... but it can be a slow process. Make sure you leave plenty of time between your submission and when you want to launch!
React made simple webapps a case of just gluing dependencies together and much more approachable to a generalist developer than the previous generation of web development was. But native apps weren’t affected in the same way. With AI I suspect we’ll see a lot of simple apps, the ones that really aren’t doing much other than CRUD operations on a remote API, become very heavily AI generated by generalist developers.
But there will still remain a healthy market for working on considerably more complex apps.
That is the real issue. How to get noticed in a sea of slop.
It also supports the 'native is better' apprpach. For example, I recently started with Powerflow [0] which I really like except for the size of it, and created a Swift version [1] in an hour of Claude plus manual tweaks. It's been running quietly on my laptop ever since.
The downside is that it brings Apple's iOS restrictions into sharper relief: being able to easily write widgets and apps to suit my needs but then being unable to run then for longer than a week on my own hardware without paying $99 a year is especially frustrating.
[0] https://github.com/lzt1008/powerflow [1] https://github.com/Tom1827/powerflow-swift
> What is going on in the world of pure IOS/Android app development?
I'll speak only for Android.
I am tired of Google breaking source compatibility with every AndroidX release and remaining on outdated IntelliJ Platform versions in Android Studio.
not too long ago, Google released AGP 9.0, which was a SHOCKWAVE for many Android projects. many compiler plugins' compatibility, including Google's own Protobuf Gradle plugin, took very long to adapt. also, Kotlin Multiplatform received so much damage that a month after release, JetBrains themselves released an AGP 9.0 migration video on YouTube.
and then we have MDC-Android (Views) v. Compose tension. MDC-Android got Material 3 and M3 Expressive components much faster than Compose, and for many you still have to be on alpha Compose Material3 releases... which are more stable than "Stable," somehow. Compose is nice, but I'd swap Material for something else ASAP or use Compose Foundation directly.
> How is AI/LLMs affecting app development?
you have more useless buttons in Android Studio. or, if you are a paying IntelliJ IDEA Ultimate user, you can have Android support in IDEA, which enables ACP agents without sacrificing proper Android support. IDEA Android plugin lags behind AGP upgrades a little, though, but it's fine.
oh, and, you can vibecode Android apps in Google AI Studio with streaming from a Google-hosted device, all without Android Studio.
> what has changed in App Development in the past 2-5 years?
2 years? a lot. 5 years? the world turned upside down! Compose got Stable release 4 years ago.
> What does a career in only app development look like nowadays?
very discouraging. everyone just prefers React "Native". I couldn't find an Android job in two years because it's nowhere to apply to in Ukraine and just recently switched to .NET. guess what? less than a few weeks passed after I updated my Djinni and now I have a few interviews on the next week.
We built iOS first because that's what most of our users have, though the team is mostly on Android.
We built our logic in Rust, so that compiles cross platform. It's really just the UI layer that is per platform.
Though I had initially written our first demo in React-Native, the team wanted to go with native UI.
Lately we've been talking about moving the timeline for our Android app up because we can get AI to help using the iOS app as a foundation.
I haven't seen anything really new and compelling in iOS/Android land. The promise of right once run anywhere continues to be a promise, and the bluetooth libraries across different devices (particularly in Android land) has me concerned.
Having never created a mobile app, how's that work exactly?
I work on the Android side for a company that develops an external bluetooth device (not a wearable, but similar enough) and the bluetooth library situation has certainly been an issue to be concerned about.
Using the default Android bluetooth SDK "raw" is fraught with potential problems, at the very least you need some sort of added message-queue-like system built on top since it does none of this for you. You also have to contend with a lot of strange device specific issues (of the type "works fine on 99% of Android devices, this one Samsung device has a driver quirk we need to work around", etc).
Things looked pretty good with the Jetpack androidx.bluetooth library as a higher level abstraction, but Google suddenly deprecated it and stopped working on it before it left alpha.
After lots of investigations and iterations I ended up using Nordic Semiconductor's 2.0 Kotlin BLE Library, which is technically also still in alpha release, but is much more stable than that designation suggests.
https://github.com/nordicsemi/Kotlin-BLE-Library
After having messed with all of the options, I highly recommend Nordic's library as a solid basis for using Bluetooth in modern Android/Kotlin, but in your specific situation I'm not sure if bridging it to Rust would be less or more painful than having an LLM generate a Rust wrapper and message queue system over the raw android.bluetooth library.
you can ship the actual UI stuff in seconds.
you can write your own plugins for anything native and just call it. we have a app that uses many native SDK calls which we write plugins for and call.
not to mention that once the native work is done you can deploy ui level changes and new features, bug fixes to users over OTA.
i’m just an outsider so i know my lane. but
whatever you do, do not allow bike shedding and ultra opinionated tech nerds to derail company vision timelines.
https://github.com/LeoMobileDeveloper/ios-developer-tools
https://github.com/AvdLee/SwiftUI-Agent-Skill
The hard part of this app is great design, requiring intentionally designed workflows and lots of real world testing. The code isn't the interesting part and now code isn't taking most of my time. It's great!
Once the design is nailed down and workflows tightened up, I don't expect much active development and can focus on distribution and marketing.
As a solo dev, this feels totally doable but ask me in 6 months.
As an Android developer, KMP is the bigger development. It seems mature enough now that if I want to build an app as a single dev I feel confident that I could get the iOS version out at the same time. They seem to be avoiding the mistakes of Xamarin and Flutter
The market is saturated for new apps.
AI is useless when developing with Maui, as it's too new of a development framework for any AI's knowledgebase to have a clue what to do with it.
Mostly for fun/scratch my own itch, and using AI as a companion/helper device.
Other than LLMs the biggest change has been moving to Kotlin Compose from the old Android XML-based layout system.
LLMs are something I use often now and I'm not thrilled about this but it is what it is. I'm one of those people who prefer to hand craft code in a deep flow state so the move to LLMs has made me enjoy my job less, but it is hard to argue against the productivity gains so I try to be grateful that there was a long period where what I enjoyed doing and getting paid for were so well aligned. It isn't like my job is horrible now, it is just not quite as fun.
While I use agentic AI quite a bit, I don't "vibe code". Much of the software I currently write falls under various medical compliance systems (FDA, EMA, etc) and they rightfully expect us to understand and be personally responsible for the quality of the code we produce. Even absent the regulations, I still find it absolutely wild people ship code (associated with their name in any way) without looking at it.
I've been working for the same company for the past 5 years so I have little idea of how the career/interview side of things have changed recently. From anecdotal reports it seems like a giant mess of ghost jobs and competing with massive piles of AI-generated and AI-filtered resumes these days unless you have a strong network from the before times.
A lot of people in this thread seem to be worried about discoverability, I'm sure AI has made that worse but it was already a huge problem to get random apps noticed even before AI. The apps I currently work on professionally support external hardware devices that the apps control via bluetooth, so app store discoverability isn't a big concern (you buy the external device, then the documentation points you to the app store downloads).
I have also done app development as a non-commercial side project, writing a PvP game/stat tracking app for the game Destiny 2, this is a free app that has about a thousand users on iOS and a few hundred on Android, written in Kotlin Multiplatform. That started pre-LLM and I've continued to avoid using LLMs while working on it to make sure I can remember how to code sans LLMs, though the fact that Destiny 2 is stopping new development as of June 9th means I'm unlikely to put much effort into it going forward.
Anytime I let lose AI (Both Codex and Claude), they end up producing slop that is overcomplicated, and that looks like a generic tutorial interface. Great for toy apps but not for serious one.
When I do most of the architecture, and use AI to 'fill in the blanks' or just finish some functionality here and there, then AI is great.
The main reason is that it is trained by public code that is mostly tutorials, and simple apps, so AI can't build a great looking one by itself (or it doesn't how to do large apps). But for specific features, it is great.
TLDR: It is still a 'fill in the funcionality here' type of help. Folks that are successful with letting 'multiple agents' running in the background are mostly for backend work where the results are easier to verify.
Also, there is a lot of LARPING in twitter sphere exaggerating what AI can realistically do right now. But I can see how it can affect entry level jobs. AI is still like an CS intern, or very very junior engineer.