r/AskComputerScience 12d ago

AI in CS/programming/coding

As someone who couldn't be farther away from this field, I started using claude recently for a project of mine and had claude code do all the work for me. Then I turned to my CS friends and they told me it was the same for them.

At one point I heard an argument that AI should be used to explain things to you or only do stuff which you'll understand afterwards.

What is it actually looking like at this state? Do any AI users in the space actually understand each function it sends out or are they trusting it blindly like me? This isnt an ethics question, just the reality of our current situation.

0 Upvotes

11 comments sorted by

View all comments

1

u/strange-the-quark 11d ago edited 11d ago

The state of the industry is a bit of a mess at the moment. From what I've been able to gather, you have everything from companies fully committing to AI out of fear they'll be "left behind", mandating the use of AI and requiring their devs to report weekly on how much AI they used and in what ways, to companies banning any code written by AI, and anything in between.

The first one is just insane because it's basically the management (i.e. people who are typically not developers), telling software professionals (i.e. people who actually know how to develop software) how to do their job and what tools to use. The other position (AI ban) may seem like an extreme stance as well, but is somewhat understandable and warranted in certain fields. The current AI technology is intrinsically prone to making stuff up, so while it might work fairly well a good chunk of the time, even most of the time, "most of the time" is not good enough for writing quality code. And if you're working on something novel or something niche that hasn't been published many times over in public code repositories, and hasn't been described and talked about to death online (which is where the training data comes from), AI will have limited utility.

So what ends up happening in companies that that make heavy use of agentic workflows is they get a lot "done", and seem productive, but it's a bloated buggy mess. Roughly speaking, the more senior developers who know what they are doing are pulling their hair and are spending more and more time battling constant influx of subpar or unnecessary code, medior developers initially buy in and feel like they are getting some sort of a net positive from the AI, but then realize all is not hunky-dory and start feeling like they are loosing their skills and questioning their own worth to the company, and juniors just don't know what the hell they are doing and never learn because of their overreliance on AI tools. These days, on various platforms, you constantly get questions from newbie developers asking how does one actually learn to code because whenever they tried doing something on their own without making use of AI they found themselves not knowing where to begin. AI can be insidious like that, it can make you feel like you know more than you do.

So you have a bunch of code produced that is of questionable quality, with people who are supposed to take ownership of it, and maintain it, loosing their grip on it, and becoming disinterested. Despite what these companies believe, this can't be good for anyone involved: not for the end-users, not for the devs, not for the company. Lately, it looks like some devs are willing to take a stance and limit their use of AI to the extent they see fit, against company mandates, even if it cost them their jobs, and I salute this. That's what professionals should do.

That said, AI can be great for prototyping. You can let it relatively quickly cobble together a prof of concept. It's also great as a way to find information - not as a search engine or as some quasi-expert system (cause you always have to be wary of what it says), but as something that can tell you what to search for and where to look, i.e. it can nudge you in the right direction as long as you're still willing to use your brain. It may even help come up with something novel, but that requires using it in ways that are somewhat experimental, coupled with careful analysis and some actual serious work - very different from what these companies are doing.