AI Software Development Is Near-Impossible
(www.youtube.com)
from abbadon420@sh.itjust.works to programming@programming.dev on 28 Jun 20:59
https://sh.itjust.works/post/62568672
from abbadon420@sh.itjust.works to programming@programming.dev on 28 Jun 20:59
https://sh.itjust.works/post/62568672
Support this channel on Patreon ► www.patreon.com/zoranhorvatGenerative AI can write code, but it cannot develop software on its own. Here is why the…
#programming
threaded - newest
I’m a retired software dev, but anactive developer I know talks about how much time he saves daily by using Claude for grunt work.
Tell him this: If you’re writing that much boilerplate (grunt work), you’re probably doing something wrong. If AI can write your normal work, you really should be learning, so not using AI at all.
Actually I’m not going to tell a dev with decades of experience that an internet rando thinks he’s doing his job wrong lol.
Would you at least tell him to call his mother every once in a while?
nsfw (aussie)
Video
K. It’s astounding to me that after decades in the business, he’s still writing code that can be written by basically an intern.
When I try to get AI to write my code, it stumbles all over itself just failing to understand the simplest of my libraries. (Literally it made multiple mistakes using the fucking tokenizer library I wrote that is so simple, an intern would have no problem with it.)
Even if it does write code that works, it usually (about 50% of the time in my experience) has bugs, and sometimes those bugs can be really difficult to spot. For me, it has never saved me any time. I’m either fixing something it doesn’t know how to do correctly, or going over its code with a fine tooth comb because when it says, “this is production ready code, with no bugs,” it’s usually wrong. That takes a lot of time. It’s easier for me to just write the code correctly myself.
Admittedly, I haven’t used that new model that Anthropic revoked access to the public to recently. Maybe that one is good enough for government work.
Most of the younger generation devs at my company are using ai coding - mostly for said gruntwork (like writing small functions, api methods, writing what data they want to see instead of complex sql requests), but some are more enthusiastic and use heavier agentic setups. The best validation is that we still have old-school human pull request reviews (enforced by a scary Chief R&D) and if your colleague would see something unreadable or weird, your stuff wouldn’t pass.
I’m a Product Manager and I have several pet products now - all pretty viable (depending on the time I invested in each of course). A stocks website, a money splitting android app (now passing google play review), a weather app. All working, and I have really low coding skills myself
what actual product do any of those sites produce
sounds like toys
AI corporate slop is when you mass generate a bunch of stuff, don’t read it, and then export the mental burden to a different coworker. You make them looks less productive and you look extremely productive, when really you’re stealing the productivity of colleagues.
You just reminded me of that.
I’ve tried (and still try) to find good workflows using AI, but I don’t think I’ve found anything that saves time. To get the same quality using AI, I have to go back and forth with it a lot, and review all the bloated bullshit it generates. If you don’t care about quality or the thing even working correctly (e.g. prototypes/POCs), it’s really fast.
There can be a million papers on how AI is worthless, the vibe coders are way too brainwashed into their shitty habits that they’ll never stop. It’s basically a sect at this point, but a sect that is destroying the world.
There are papers that are pro and con. It’s a new tech - we’re still figuring out how to use it. It’s gotten a lot better than a year or two ago though.
It’s definitely helped me get things done a lot faster. You can point to “that one study everyone does” and tell me “no it’s not” but honestly, it is.
I’ll give you an example - I had to write a small bash script to fix home directory ownership on a server because somebody borked it and some critical jobs weren’t launching properly. Just something to read /etc/passwd, parse out the owner and home dir and
chown-R $user $home. Dozens of user dirs so quicker to just script it.Time was of the essence. Claude had a script in ~6 seconds. Yeah - I could have written it - but not that fast. I validated the output and gave it a run. All’s good.
You can insult me as “not good developer” or whatever you need to do to make yourself feel better - your opinion of me is irrelevant. But these tools are pretty damn good at what they do if you use them properly. “Properly” being the key word here. They are tools not employees so you need the proper critical thinking to apply them effectively.
Yeah this is the type of constrained use case I use it for too. Same with unit tests and testing in general.
I’ve coded “professionally” (solo dev for a small company. Not the full dev experience so big caveat)
I find AI is amazing at writing unit tests and other test harnesses. That’s all it’s good for besides summarizing documentation and even then it’s so misleading it’s basically useless you have to constantly doubt it. It’s a pathological liar… And I mean it’s kind of an impossible task… It’s trained on the entire internet. The strongest weights it has are for the oldest and most popular libraries. Oftentimes it’s telling me to use deprecated shit left and right because that’s biased extremely high during training, and maybe 1% of posts on that library mention it’s deprecation.
I prefer to write my code the old fashioned way. If I have it generate code it’s never pasted in, and I prefer having it explain what I don’t know about what it’s doing. Using it as an assistant and a TDD buddy works relatively well.
Also if you poke at software architecture. I’ve learned a lot (I wasn’t formally schooled in computer science) and it’s good as long as you constrain the scope of what you’re asking about, and make sure to consider it on your own against the existing project architecture. I still make the design decisions myself.
Oh, also having it make design decision documents. I often make those to record “this is why I’m doing this feature this way. These are the options I considered, and why I decided my way is better in this particular case” so I have a record of my state of mind and decision making. AI is phenomenal at making easy to read and well summarised DDDs