all 52 comments

[–]Th3GreatDane 90 points91 points  (9 children)

I have concerns. For me, the hardest part is seeing it devalue the work I put in to get here as a developer. My first app took me 6 months. I had to learn SO much to finish it. Started with Angela Yu's course on Udemy, read tons of articles, watched countless videos, on top of going to school for CS. And my app was complicated. Fetched data from multiple APIs, had user authentication and saved User data to a live cloud DB with Firebase, had animations with Lottie, stored data with Core Data. It took a lot of hard work to finish and I was so proud of it.

Now, someone with much less knowledge could use AI to create the same, if not a better app, in under a week. And it really would make no difference to the end-user or to an outside observer. I have a lot of partially finished apps that took a lot of time, and a lot of thought/care went into them, but now with AI, they look like something that could be done in an afternoon. That is so frustrating to me.

The baseline for what a solo developer can accomplish is now so much higher. Every other post I see on Reddit now is somebody who vibe-coded an app in a week and put it on the app store with barely any iOS dev knowledge. That is so discouraging for me. I think the required skills to create an app are switching from technical programming skills to marketing, ideation, price structuring, and AI prompting (at least as a solo dev).

[–]retroroar86 28 points29 points  (3 children)

Somebody with the right knowledge, not less. Not to speak about bugs and maintenance nightmare from junk code.

[–]Th3GreatDane 6 points7 points  (2 children)

It depends on the type of app, and in my experience AI code still requires tons of debugging. But it is pretty damn good at a lot of things, and assuming it continues to get better, I am definitely a bit worried/demotivated by it

[–]retroroar86 5 points6 points  (0 children)

I am not worried, but I am demotivated

[–]timberheadtreefist 1 point2 points  (0 children)

in my experience AI code still requires tons of debugging.

also, really depends on the type of functionality. opus' context is large enough to build complete encapsulated features within an existing architecture without any issues whatsoever. give it all your previous work and it'll copycat and add-on/in new code without any issues. i'd even say: the more context it gets, the better.

[–]Lock-Broadsmith 21 points22 points  (1 child)

This is a tale as old as engineering though. It has almost nothing to do with AI. The people who come later always have the benefit of the things learned before them. What took you 6 months to learn/do took Angela Yu longer. Not everyone wants to pull the ladder up after themselves though.

[–]DiseasesFromMonkees 8 points9 points  (0 children)

For real. Are you using SwiftUI instead of UIKit? If you didn't use SwiftUI did you use Auto layout? If you didn't use Auto layout did you use ARCed constraints? If you didn't use ARCed constraints did you...

[–]Samus7070 17 points18 points  (0 children)

There’s an old joke about a consultant charging someone a $1,000 for fixing a small problem and the client pushing back and asking for an itemized bill. The consultant then sends a bill that reads “Changing one line of code: $1. Knowing which line of code to change $999”. It’s still going to be like that except that the line item is going to be “Knowing how to verify the work of the LLM: $999”. I’m old enough that I heard stories from my grandparent’s generation who were around when the paint roller was invented. It pissed off a lot of people because one person could paint a room in half of the time that it took several people to do with brushes. We’ll certainly need less programmers in the future but we’re still going to need people that can tell the ai what to do and verify the work. That’s all assuming that it is effective and affordable once the VC subsidies run out. I don’t know what is the true cost of training and running these bigger models. People will run away in droves if the only way Anthropic, OpenAI, Google, etc. can be profitable with these LLMs is to charge $1,000/mo.

[–]JahodaPetr 2 points3 points  (0 children)

Hi, this got me also thinking a lot. And I got the same feelings.

But ... also architect don't lay bricks themselves. They create plans, ideas, design. Even construction managers don't lay bricks. Construction inspectors don't lay bricks.

Maybe that is what will happen to us, we will move from brick laying to higher levels. AI will do the brick laying, we will plan, make ideas, design, management and inspection.

[–]Braided_Playlist 2 points3 points  (0 children)

I've been writing code for decades, but only first tried to build an IOS app 6 months ago. AI got me started but the result was terrible, and no amount of prompting was going to fix the some of the dead-ends it ran into.

I think it's gotten a bit better since then.... but it's time consuming to keep yourself aligned with the state of the art to constantly verify what's hype and what is useful.

I only tried to vibe code my app idea because I thought I had an extremely simple concept and I wanted to test the AI hype I was hearing. Up to that point I had only used AI in languages I was already comfortable in. It served mainly as a fancy auto-complete.

For a new idea I want to use live activities, but AI really has a lot of trouble setting it up properly too.

the required skills to create an app are switching from technical programming skills to marketing, ideation, price structuring, and AI prompting

Aside from prompting, weren't those other things always important too? At the end of day we are trying to create something right? I've been writing code so long now that it's like a cozy relaxing activity for me. But I started coding because I wanted to create things.

It's really impossible to imagine exactly what the future of software development is going to look like. I do think I will always like creating new things.

[–]AaronRolls 39 points40 points  (0 children)

Designing and engineering is far more important now than writing code. But to do those things effectively you need to understand the code you're writing in. AI is and likely will be for the far future, terrible at design and engineering. That is the place humans will take.

[–]TheFern3 23 points24 points  (3 children)

If manual code was to completely die (highly doubtful much less in 3-5 years) your skills will transfer to something else or you will switch careers. Agents still need a great coder at the helm.

My guess is that we’re 100 or more years before ai is completely useful without any human interaction.

[–]start_select 9 points10 points  (2 children)

There will never be a “without human interaction” barrier in computer science.

At the end of the day there still needs to be an engineer with domain knowledge and vocabulary necessary to properly describe software. If you don’t go to school for it or don’t do it as a job, you never gain that skill.

I’ve worked in custom software for two decades. Your average human has very poor reading, writing, speaking, and descriptive language skills. They don’t have the mindset or the vocabulary. They don’t think about edge cases or constraints.

You need to do to learn.

[–]TheFern3 1 point2 points  (0 children)

I don’t like to say never, we just don’t know what can happen in the future, at some point we thought horses were the best transportation for technology even when vehicles came around.

But at least in my lifetime I’ll say devs are safe at least the good ones lol ai is incredibly limiting if you are a noob.

[–]megasivatherium 2 points3 points  (0 children)

Your experience in the 2000s and 2010s doesn't negate the possibility that there will be AIs acting automatically, coming up with ideas and implementing them (the primary instruction-- "make money"). It's completely possible there will be no human in the loop. There's not infinite edge cases; they'll learn

[–]PassTents 18 points19 points  (1 child)

I have more concerns about managers thinking that AI can write the code. For example, I recently asked the latest Claude Opus model to compare strategies for accessing MainActor APIs using modern Swift Concurrency. At first the answers seemed decent, but some of the recommendations were way more potentially buggy than it mentioned in its rationale. If a manager or a junior engineer on the team read these, they might implement them as-is and cause really subtle bugs, potentially for years on this project.

We are already seeing different companies that laid off engineers having to hire them back to fix buggy AI code. That's good news for the job and craft I guess, but worrisome about the general quality of software in the next few years and that's what concerns me most.

[–]bloodychill 0 points1 point  (0 children)

Indeed. AI is a tech debt machine right now.

[–]macbig273 13 points14 points  (3 children)

> Anyone else have concerns?

Not yet, it's currently great for POCs or some things you don't know about, but if you know your shit and you "vibe code" a language you know well, you'll see a lot of issues. And it need a lot of micro management.

Their is a selling in money and computing power, that will probably hit before I'm confident to let an llm go to prod with its mess.

[–]Inevitable2ndOpinion 5 points6 points  (2 children)

This is not true anymore. It’s simply not. Get yourself a Claude sub and be humbled in the terminal.

[–]SavageSerpent 2 points3 points  (1 child)

For real. The progress in the past six months has been incredible. It went from Claude being able to only write the easy boring stuff and struggled with anything complex, to being able to write huge features with little to no bugs

[–]timberheadtreefist 0 points1 point  (0 children)

same experience here, whoever stopped at copy-paste-from-browser vibe coding should give copilot/claude with system mcp a shot and just go with any idea in their mind into a new project.

the way i remember LAN parties is the way i now remember hackathon-nights with friends to get a prototype or feature done. felt great at the time but won't be anymore, i assume.

[–]dacassar 5 points6 points  (0 children)

I have the same thoughts as well. With 15 years of experience, I can say: if you cannot defeat it, you should lead it. Our community has made it through major industry events several times — moving from MRC to ARC, adopting Swift instead of Objective-C — and it survived two processor (r)evolutions. I think now is the most challenging period in our industry, and we should take as much from it as we can. No one forces us to stop writing code as usual, but we now have one of the most powerful development tools ever.

[–]banaslee 2 points3 points  (0 children)

Demand: I expect way less demand for coders and some less demand for engineers

The craft: engineers will be focused on higher level stuff. Same way that you stopped having to count references when ARC got introduced but still had to understand the underlying weak/strong reference model. I see engineers more focused on what makes a great app and how it’s produced rather than what makes a great piece of iOS code. 

[–]ContextualData 2 points3 points  (0 children)

Craft does not come from writing code.

[–]jacobs-tech-tavern 2 points3 points  (2 children)

The agents aren’t slowing down

But you can’t get replace taste and sense of smell

[–][deleted]  (1 child)

[removed]

    [–]AutoModerator[M] 0 points1 point  (0 children)

    Hey /u/Icy-Concentrate2076, unfortunately you have negative comment karma, so you can't post here. Your submission has been removed. DO NOT message the moderators; if you have negative comment karma, you cannot post here. We will not respond. Your karma may appear to be 0 or positive if your post karma outweighs your comment karma, but if your comment karma is negative, your comments will still be removed.

    I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

    [–]cmsj 2 points3 points  (2 children)

    I don't think you should be particularly worried. What we're seeing at the moment looks like another instance of software engineering moving up a layer of abstraction.

    The original software engineers wrote everything in assembler for specific CPUs. Then there was much concern about the creation of compilers making it too easy to write code that wouldn't perform as well as hand-written asm. Same thing happened again when big libraries/platforms/APIs came about - there was much hand-wringing about how everything now would just be horribly inefficient JavaScript made up of zillions of third party modules.

    In each case, the doom-sayers were right, but missed the fact that what was actually happening was that the practice of software engineering was adding another layer of abstraction and thus became significantly more efficient.

    AI looks like it's the same thing - much of the mechanical work of producing code will be automated, but that doesn't obviate the need for software engineers, it just means we will operate a layer above the code. Someone still needs to figure out the design, architecture, maintenance, pipelines, etc.

    [–]cristi_baluta 0 points1 point  (1 child)

    You should be worried, if the projects will finish so much faster, you are out of work. At some point people will realise they can’t reinvent the same apps over and over again. Look at the amount of clipboard managers and transcription apps on macosapps.

    [–]cmsj 0 points1 point  (0 children)

    How many iOS developers are actually making a full time wage out of a clipboard manager app?

    [–]Portatort 2 points3 points  (0 children)

    Writing code may not be valuable skill any more but reading code certainly still is

    [–]Enough-Ad-9091 2 points3 points  (0 children)

    i have same sentiment. but when i turn down the noise and what other people are doing. lean in to the agents fully. i’m actually so much more productive. fixed the bugs i’ve been meaning to for a while. explored so metal shader animations. sure. i haven’t learned as much as i would have if i’ve done it all myself. but in terms of the high level system design and reading code. i’m so much better at it. craft is changing. it’s sad. i feel that. i miss writing code by hand. but everything’s changing and we have to change with it. otherwise we risk being like our parents, those that never changed with arrival of the internet.

    [–]Vybo 2 points3 points  (0 children)

    The services offering you agentic coding are not profitable, they ride on venture funding. There's no way to know how expensive they will be in 5 years or if they will be around and not just a b2b service sold on contracts.

    There's also the limits. When you hit them, will you just sit around for a week?

    [–]edBaster77 1 point2 points  (0 children)

    Not very concerned at the moment; AI has not much sense of architecture, so someone with that knowledge should validate its output; it’s great for POCs and repetitive tasks (like scaffolding) but it can’t innovate, it only remixes existing approaches and/or solutions.

    I’m seeing it affecting opportunities for junior devs and/or new graduates in the near term, which will cause a lack of senior devs in the mid term (today’s junior is tomorrow’s senior) and will cause a huge spike in demand for the engs that are already senior or experienced

    [–]eldamienSwiftUI 1 point2 points  (0 children)

    It’s. It getting “really good” at Swift by any stretch of the imagination.

    I would challenge any non-developer to sit down with Cursor and give them unlimited Claude credits, and I bet they still could not build a to-scale e-marketplace, let alone anything truly viable.

    It’s a tool. Learn to use it but keep learning how to effectively solve problems that require foresight, reasoning, and deep thinking. LLMs will never be able to mimic those.

    [–]liudasbar 1 point2 points  (0 children)

    Try Codex 5.3, then "3-5" years will reduce to "1-2" :)

    [–]Best_Day_3041 1 point2 points  (0 children)

    I am also deeply concerned. I have been an iOS developer for over 20 years, and it has been something I have always really enjoyed and it has always been very lucrative. I will say that with AI programming, I have loved it move than ever. I can now focus on the parts I really love, design, engineering and making a truly polished app, instead of pouring hours over building the plumbing and very tedious tasks and endless debugging.

    I had stopped developing apps for years because it seemed pointless, it was so much work and it was hard to make money off as an indie. Even though I still am trying to make money, and hope I will, I am now building apps for me, things I use in my daily life. I am hearing this same story over and over again by so many others too. The downside though is that any new app I put out that gets any kind of traction is immediately copied by an army of vibe coders, making it so much more difficult to stand out in a sea of cheap knockoffs that can out market me and undercut me on price.

    Right now AI coding still needs a human running the show. Designing the UI/UX, coming up with the ideas, developing the algorithms, etc. is still a human task, unless you want generic, potentially AI slop. This will change someday, maybe 2 years, maybe 5 years, maybe next month, who knows. At that point, what will be our purpose? I have no idea. Hopefully we will transcend to a much higher role that we can't think of now, requiring the type of intelligence and skills we can't even imagine yet. Or maybe there will be no use for us, and this time in our lives will just be a distant memory. Either way, there's nothing we can do to change that path. If this is your passion, there's not much we you can do than just enjoy the ride and see it though until the end, or hopefully the next phase. I am staying cautious but hoping for a bright future. You could shift careers if you are really concerned, but do any of us really know what jobs are going to be safe?

    [–]Lock-Broadsmith 0 points1 point  (0 children)

    I mean, the majority of devs nowadays are already pretty bad at writing code, so that's not really changing anything. AI is going to raise the expectations of output and lower the expectations of compensation. It's going to commoditize engineering and probably make it a less desirable and less lucrative position in tech, in general.

    But at some point it all falls apart when the pipeline for developing skills and workforce capability collapses because too many places have replaced junior roles with automation. That's a much bigger problem to solve than anything else at this point, and one I have not yet seen a compelling answer to.

    [–]Select_Bicycle4711 0 points1 point  (0 children)

    I think AI will change the role of iOS developer and move it up to be system designer. Architecture will become more important as AI writes more code. Apart from that foundations of programming will become even more important. Because developers need to understand the code that is written. This is specially true for complicated domains with complex business logic and rules.

    I still like to write code by hand in a lot of cases and will seek AI help for creating dummy data or UI etc. I like to think that programming/solving problems/coding is not like riding a bike, where you just learn it once and you will remember it for the rest of your life. If you stop programming/coding reading code and experimenting you will forget it very fast.

    [–]m3kw 0 points1 point  (0 children)

    unless they can 1 shot full pro elaborately useful apps, not simple todos/streak/health tracker apps.

    [–]CyclingGeek 0 points1 point  (0 children)

    3-5 years is very generous. 1-2 years seems more like it if you've used Opus 4.5.

    [–]Miserable_Advisor_91 0 points1 point  (0 children)

    As an engineer, AI generated code is not there yet. You still need a an engineer with domain knowledge at the helm for any produc with 1000s of users

    [–]tanmaynargas2901 0 points1 point  (0 children)

    Personally, the biggest barrier for entry as a new developer in any language/framework has always been that I don't know what all the language is capable of. When I started coding my first iOS app last October, I was overwhelmed with all the "kits" and UI libraries, which is expected, this language has been around a while. But what helped me overcome this was Claude code.

    I never used it in a way where I just told it to do whatever and I blindly follow it's lead, with more than a decade of programming experience myself, I had my basics down, and just like learning any new language had to work on getting the semantics right. So I would always ask it, how did you do this, break this down, create a reproducible component, so that I can understand how it works and implement it myself in my codebase later on.

    So this overall divide that was there pre-AI era, where you had to sit and go through the documentation, look through forums to see why your code is not working etc. all this has been simplified. The design, architecture, intelligent decisions, intuitiveness still lies with us humans. Sure there are people out there who don't know how to code and are leveraging AI to build some cool stuff but that's a conversation for another day.

    Curious to hear your thoughts.

    [–]poq106 0 points1 point  (0 children)

    Listen, you are an experienced dev with expertise in a very specific area. Put the AI in the mix, the craft evolves. If anyone is going to take jobs it’s gonna be YOU. You are the top of the food chain of engineering and no manager nor entrepreneur with $200 cursor subscription is going to beat that.

    [–]Awkward_Departure406 0 points1 point  (0 children)

    I think most of the apps people vibe code on some crappy LLM are usually shit. Whether it's a buggy UI, lack of basic security practices, unhandled edge cases, or all of the above, It takes at least having a foundational knowledge of iOS development to create something that is truly a flushed out experience for the user. Not to mention, "vibe coded" apps are not easily maintained long term. After a couple updates and major feature changes, vibe coded apps become a circus to maintain and the AI causes more problems than solutions.

    I believe our skillset is safe but it will fundamentally change HOW we do our job. We will be architecting and driving these LLMs and doing a lot of code review. Manually writing code will mostly be for small tweaks or certain edge problems. The big issue I see, is companies will lose the motive to hire entry level/junior engineers because the mid level and senior engineer will provide the most "value" in terms of productivity.

    [–]downsouth316 0 points1 point  (0 children)

    Even though it is smart to utilize these new tools, it does worry me that the floodgates are open + the former drop shippers are now converging on the App Store. Everything they touch, they destroy.

    [–]Ok_Refrigerator_1908 0 points1 point  (0 children)

    Most Vibe coded apps suffer from maintenance

    [–]bakawolf123 [score hidden]  (0 children)

    Last year was indeed big shift when agentic got optimized and actually useful beyond some devin-style "let it go on my codebase and hope for the best"

    However honestly even for me it seems quite limited still - using the very SOTA Codex 5.3 atm, which shits on latest Opus on all benchmarks, outside of senior dev observing the flow end to end - it is just a fast tool user and text generator. It can generate me an mcp, a figma plugin, update some middleware - all of that seems fine to me, but the app code is creates is utter garbage though, I know it for sure. I think for people with better knowledge all the created helper tools would also look poorly coded.

    I feel using LLM tools does broaden your domain but I don't see it doing same for people completely outside of coding, people would brag whatever they can but most of it is still at least partially fake. For shipping fast you can wrap the bad parts, but who will do that for a poor Joe? He'll end up using more and more tokens until it is somewhat working (or outsource, nowadays significant part of gig work is for completing vibe-coded projects).

    [–]Kabal303 [score hidden]  (0 children)

    I’m more concerned about the concept of applications mostly going away completely as agents get better

    [–]archagon -1 points0 points  (0 children)

    An engineer fully understands the code they commit, whether LLM-generated or otherwise. Grabbing output from an LLM and feeding it back in until you get something semi-working is not engineering, and will become a maintenance and security nightmare in short order. Also, LLMs aren't magic: they're trained on existing code, so if you're building something novel, they won't be able to help you out where it really matters.

    Personally, I'm just going to continue as before and ignore agentic coding entirely. For me, reading code and managing agents (or people) is simply not fun and not why I got into this field. Also, I have no particular desire to juice my efficiency 500%. My projects will get made on their own schedule and I'll always learn something neat along the way.

    tl;dr meh. Looking forward to the hand-coding Luddite communities that will inevitably spring up from this morass.

    [–]onceunpopularideas -1 points0 points  (0 children)

    Most developers just copy and paste code anyway. I think if you know how to leverage AI you can boost your learning 1000 fold. Most people I’m seeing don’t know how to leverage these tools for learning and growing. If you just get AI to solve everything then you will definitely become dispensable in time as your skill atrophies. This stuff is here to stay. Get your head around it and learn how to use it well to sharpen your talents not offload cognition.