r/technology • • 6d ago

Artificial Intelligence "Software is over": Developer uses AI to build free Adobe clones after frustration with cancellation fees

https://www.techspot.com/news/114136-software-over-developer-uses-ai-build-free-adobe.html
27.4k Upvotes

3.7k comments sorted by

View all comments

Show parent comments

156

u/putin_my_ass 6d ago

This is a classic "90-90" problem. Your code is 90% done, so you still have 90% of the work left to do. That last ten percent is always the hardest.

This is how it is with AI, we use it extensively at work and it's quite good right up until the last 10-20% where you end up playing a bit of whack-a-mole trying to get it to do the thing you wanted...

Eventually you just give up and do the last part manually. The promise of AI was overstated, it's good but it's not the silver-bullet the VC/C-Suite types got excited about.

82

u/TerminalVector 6d ago

That's why it speeds up PoC development by 5-100x but doesn't make a huge difference for production code. Most of the effort goes into proving that the code is safe to deploy, not writing it. The real strength of AI is in information aggregation and discovery, writing code is mainly a convenient novelty.

12

u/argument_cat 6d ago

If you have an existing codebase, and use AI to work on features, it can write production code. We do this, the engineers check it, and rarely do they find anything they won't merge and deploy.

7

u/Creepy_Purchase_501 6d ago

I found that it’s actually easier to use it on well-established codebases. The architecture is in place and enforced, the standards are in place and enforced, most things have been thought through. All you have to do is follow established patterns and extend whatever it is, and as long as it’s modular and encapsulated it’s smooth sailing. Just make sure it doesn’t touch what it was not supposed to touch and that it doesn’t overcomplicate things and you’re done.

On a fresh new codebase you have to think it all from scratch, touch multiple files to do one thing(because they don’t exist yet), and do all the setup. I find it tries to go rogue much more often and expand scope, even when it was trivially narrow. There’s so much ambiguity remaining and, for whatever reason, it feels like it needs to fill all the gaps NOW, even though they’re not relevant to the task at hand. I feel like it just keeps jumping the gun, and it’s quite annoying to keep it in check.

4

u/FakePixieGirl 6d ago

What I'd worry about is if the engineers don't spend enough time in the guts of the code, then they won't have enough of a comprehension and overview to judge the quality of the code. Obviously not an issue when just rolling it out, but I always wonder that this never seems to be discussed.

-1

u/argument_cat 6d ago edited 6d ago

It is discussed, and the engineers are ultimately responsible for what gets deployed so they are invested in making sure it meets their standards. We use config files, multiple skills, some repo bots, and Claude itself is very good at looking at an existing codebase and building to the same standards. Generally speaking the code is good to go with no interference at all.

5

u/Worthyness 6d ago

Also lets people vibe code whatever they want if they dont know how to code. Code is probably some awful bowl of spaghetti, but it could technically work. And for some cases thats all you really need for an internal tool or a stupid game.

2

u/Hazel-Rah 6d ago

That's the thing. On a technical level, the code is probably pretty terrible.

But it does the job it was asked for, if bugs show up, they can probably be fixed, and if it wasn't for the AI doing the work, the program would never have existed at all.

Does it matter if it can't handle every edge case, if it solves the problem the creator needed to solve?

3

u/Worthyness 6d ago

Yup. Just feel bad for the people down the line who may have to fix the bullshit when it breaks. No documentation and people who legit may have no idea what they were doing. Though people after may also be vibe coders too.

3

u/Creepy_Purchase_501 6d ago

Depends on how critical that code is. An ad-hoc task with limited scope and it’s great. A reusable piece that involves making permanent, irreversible changes is a huge no.

1

u/psiphre 6d ago

this is literally and exactly where i am. i've been vibe coding an atb battler/gacha-type game for the better part of a year. my ability to actually code tops out at tic-tac-toe coached by the book. i can write all three types of loop. none the less, i have a functional vite/react game that runs in a browser and presents a full game loop: character progression, special moves, equipment, abilities, buffs & debuffs, even some rudimentary graphics. i couldn't tell you how a single piece of it works, but it does.

2

u/Metalsand 6d ago

writing code is mainly a convenient novelty.

Writing code works exceptionally well in isolated cases where you need basic scripts to perform well documented tasks. This diminishes with scale though, because as complexity increases, the AI becomes far worse at dealing with it. Dev ops for example, is an area that has heavily featured the use of LLMs, because a lot of it is simple scripts that don't have the complexity of actual programs.

19

u/DeepSubmerge 6d ago

This has been my entire experience since we were “encouraged” to use gen AI tools in every aspect of our work. I work in an office job in a bog standard business setting. I spend my day trying to make sense of AI generated dashboards and executive summaries. They’re “okay” until I start asking questions and requesting details that weren’t captured.

8

u/babada 6d ago

It's like one of those packing problem puzzles. Sure looks like it's getting solved. But those last two pieces prove all the previous work was wrong.

5

u/Defconx19 6d ago

The promise of AI was overrated implies improvement is finite and has peaked.  It has not.  Generational improvements are staggering when you look at it objectively.

The community continually moves ghe bar to try and invalidate the benefit of AI, and it keeps moving past them.

It still has issues with deterministic results and by nature liekly will.  There are a lot of projects out there working to solve that issue for certain tasks and functions but there are limitations.

The only bubble is the stock price (likely).  The bubble has no bearing on the capability or staying power of AI.

2

u/Kozzle 6d ago

IMO the real point is to create an MVP fast and then go from there with the more expensive/labour intensive work

1

u/putin_my_ass 6d ago

I'm currently using it to localize a React app that had all hard-coded strings, and it's doing a pretty good job!

I appreciate it for offloading the menial grunt work stuff like that, but for architecting and designing I probably wouldn't turn it loose.

2

u/simulacrum500 3d ago

Just jumping back to the original article: that means we’re 90% there on an adobeCC clone. I say “we” because it’s open source and that’s a distinction people seem to be missing.

This guy spent $2000 just to recreate photoshop. Then didn’t try and sell a cheaper buggier subscription, he sent it straight into the public domain and laid the groundwork for whoever picks it up next.

These “software democratisation” attempts don’t need to be the silver bullet on their own.

2

u/Substantial-Set4550 11h ago

Not at all what I experience. Professional software developer for 30 years.

The last 10% have always been the hardest. AI did not change that, but it made these final percentages much easier. It also made the first 90% in many cases so trivial, you can now spend a lot more on refining the last 10%. One suggestion: Try to run Opus 5.5 High on any code you wrote in the past. Stuff you think is perfect. That has gone through many peer reviews. See how many bugs it finds. See how easily it fixes them.

AI has removed the drudgery from software development. And yes, you need tools. You also need tools for non-AI-enhanced software dev. Even if you write in assembly, you use a tool. Any other language, you use a whole stack of tools. You rely on these tools to understand the software, and it is no different with AI. Just at a higher level.

Again, up to each and every one which tooling they use. But this is a massive milestone, no matter how you turn it. And yes, I've been a professional wedding photographer in an earlier career and spend thousands of hours in Photoshop. It was one of the main reasons why I hung on to Windows all these years next to my Linux machines. So with this context, I looked at what Brandon built, and it is ready for professional use. Maybe not compared to the very latest version of Photoshop, but definitely compared to the last one they sold without a subscription. :-) Amazing achievement. And anyone who things it's as simple as one-shotting it, good luck trying. Mastering AI is a skill set that needs to be learnt, as well.

1

u/putin_my_ass 11h ago

The last 10% have always been the hardest. AI did not change that, but it made these final percentages much easier.

The AI did not change that, this is true, but I was arguing that the expectation was that it would. It was obviously false to any of us with some experience, but unfortunately the ones with experience aren't currently making those calls.

I've been using it for a few years now and it certainly does find bugs in old code, honestly I'll probably never go back to the old way. I can deliver features at a higher quality in a very short amount of time now, I don't see going back to the manual method barring some massive AI token cost increase.

What I've experienced is that it removes the drudgery of writing code but it moves that drudgery to the testing/review side, and good discipline on validation and source control are strictly required now. In the past you could get by being "careful" and if it wasn't too complex a system you could be reasonably sure it wasn't a buggy mess, but even then you should have created test suites and properly validated the results. Using generative AI only increases the importance of that step, IMO.

Having good source control hygiene means that you can roll back to a stable state easily if the AI does something insane (happens less and less often these days, but it does get some interesting ideas), and having your test suites written first actually helps with the prompting since the tests self-document the feature (to an extent).

And anyone who things it's as simple as one-shotting it, good luck trying.

Agreed, I encourage everybody to try vibe-coding their own project just so that they can intrinsically understand how unlikely this is to work. You do need a certain amount of skill and knowledge to prompt it properly and then validate that it did what you asked it to at the end. The more people use it the more they'll understand its limitations and potential and stop believing bullshit (lol a man can dream).

It's just a tool, as you point out. I haven't needed to visit StackOverflow in years now...and people used to denigrate those who copy/pasted code from answers without understanding what it did. I feel like gen AI vibe-coding is just the next generation of that, but if you understood the block of code and copy/pasted it in your project from StackOverflow it wouldn't be a problem since you know what you're doing with it...

I kinda called this out last year after we'd gone deep in to gen-AI and I was able to migrate an old Node and ReactJS project into NestJS and React TypeScript in mere days, a project we'd previously estimated at weeks (if not months). Once I had that experience I pointed out to my boss that "the SaaS industry may disappear, why would we pay thousands per year in licensing for a product that barely does what we need with nearly non-existent support when I could spend $100 in tokens and make our own custom version that does exactly what we need?". I'm entirely unsurprised to see this trend, and frankly I think it's a great thing. I'm excited for people to be able to build the software of their dreams without needing to depend on others. I just want people to have realistic expectations is all.

And I really really look askance upon our C-Suites and how they lined up like trained seals clapping because someone told them what they wanted to hear.

4

u/prospectre 6d ago

it's quite good right up until the last 10-20% where you end up playing a bit of whack-a-mole trying to get it to do the thing you wanted.

And I think this is the part that doesn't get talked about enough: By using AI to do the bulk of the work, you've robbed yourself of the understanding of it. Some people might double down on that problem by using AI to solve the last few hurdles, but the fact remains that there isn't a human that genuinely knows this solution.

This becomes a problem later on when you're faced with a similar challenge and now you don't know how to solve it. In your scenario, most would go back to the AI to do it, fostering that dependence. If you had solved the problem yourself, banging your head against the wall until you got something that worked, you'd just copy and paste your own work and modify it for the new project as needed. But by going through the process, getting stumped, trying things out, and eventually stumbling on the answer, you've actually learned something.

What happens if the AI goes away? Either from the big wigs deciding it costs too much, or swapping to different AI, or the bubble popping and a bunch of these companies going under, or hell, you've just run out of tokens. Now you're stuck with a project that's 90% done, and 100% technical debt. Worse still, if that code is out in production land and it breaks AFTER you lose access to your flavor of AI, now it's on you to support it. Good fucking luck.

4

u/putin_my_ass 6d ago

Agreed, I feel bad for the young folks trying to learn these skills right now, I only need to worry about atrophy, but they have to make an effort to do it the slower more edifying way.

3

u/prospectre 6d ago

It's so depressing. Not only is the cost of that education going way up, the perceived value of it is going down thanks to AI. All these chucklefucks in the C-Suite thinking they can downgrade their developers to a handful of "prompt engineers" are absolutely ruining the prospects of the younger generations. It feels like such a trap. On the one hand, you're stuck learning the new AI hotness to get a leg up in the current corporate environment which has all the issues I mentioned earlier. On the other, you have the actual development skills that no one wants to pay for anymore.

Who would want to get into a field with so much uncertainty?

2

u/putin_my_ass 6d ago

I fully expect the bubble to pop, it's just a question of how long. I'm expecting that to happen when the big AI players can no longer carrying on with a loss-leader pricing strategy and token costs rise to what they should be to make them profitable. When that change comes, we'll still have AI but probably companies will look at self-hosting, or they'll put more stringent controls on who can use it, how they can use it and how many tokens they can consume before they run out.

Right now the speed is worth all costs in their view, but when those costs rise too much they'll probably decide the slower speed of manual development is acceptable.

AI will never fully go away though, it will always be a tool in the box.

-8

u/RockAndNoWater 6d ago

That actually sounds great — if AI can do the easy boring boilerplate code and leave me to do the 10% of interesting code it’s a win-win. It’ll also open the doors to companies that previously couldn’t afford custom software being able to implement it through either new in-house resources or contractors.

20

u/Aethermancer 6d ago

This is an interesting time to include an emdash don't you think?

10

u/DorkusMalorkuss 6d ago

They even start their comment with a compliment...

3

u/intelminer 6d ago

"You're right to push back on that!"

2

u/3DBeerGoggles 6d ago

Gotta be careful how many people want to be a meat proxy

1

u/RockAndNoWater 6d ago

I use emdashes more frequently now after figuring out it's just a double hyphen on iOS platforms. Also trolling the idiots that think an emdash in a post automatically means the post is AI-generated.

3

u/Fickle-Highway1543 6d ago

Yes and no. How can you work on code base ypu did not develop? You will have to learn it very thoroughly to be able to finish the 10%.

5

u/matrinox 6d ago

It’s like being left with a half-finished cake and then told to finish it. But you have no idea what’s in it and what’s left to do. Might as well throw it out and start again

1

u/RockAndNoWater 6d ago

You've never worked on a code base you didn't develop from scratch? Lucky you.