Something’s been bugging me about how new devs and I need to talk about it. We’re at this weird inflection point in software development. Every junior dev I talk to has Copilot or Claude or GPT running 24/7. They’re shipping code faster than ever. But when I dig deeper into their understanding of what they’re shipping? That’s where things get concerning. Sure, the code works, but ask why it works that way instead of another way? Crickets. Ask about edge cases? Blank stares. The foundational knowledge that used to come from struggling through problems is just… missing. We’re trading deep understanding for quick fixes, and while it feels great in the moment, we’re going to pay for this later.
I honestly don’t know how anyone’s been able to code anything predominantly using AI that’s production worthy.
Maybe it’s the way I’m using AI, and to be honest I’ve only used chatGPT so far, but if I ask it to generate a bit of code then ask it to build on it and do the next thing, by about the third or fourth iteration it’s forgotten half of what we talked about and missed out bits of code.
On a number of occasions it’s given me a solution and when I questions it about the accuracy of it and why a bit of it probably won’t work I just get oh yes let me adjust that for you.
Maybe I’m doing AI wrong I don’t know, but quite frankly I’ll stick with stack overflow thanks.
It’s only useful for stuff that’s been done a million times before in my experience. As soon as you do anything outside of that, it just starts hallucinating.
It’s basically like how junior devs used to go to stack overflow, grabbed whatever code looked like it would work and just plopped it in the codebase.
I remember talking to someone about where LLMs are and aren’t useful. I pointed out that LLMs would be absolutely worthless for me as my work mostly consists of interacting with company-internal APIs, which the LLM obviously hasn’t been trained on.
The other person insisted that that is exactly what LLMs are great at. They wouldn’t explain how exactly the LLM was supposed to know how my company’s internal software, which is a trade secret, is structured.
But hey, I figured I’d give it a go. So I fired up a local Llama 3.1 instance and asked it how to set up a local copy of ASDIS, one such internal system (name and details changed to protect the innocent). And Llama did give me instructions… on how to write the American States Data Information System, a Python frontend for a single MySQL table containing basic information about the member states of the USA.
Oddly enough, that’s not what my company’s ASDIS is. It’s almost as if the LLM had no idea what I was talking about. Words fail to express my surprise at this turn of events.
Yeah, and the way it will confidently give you a wrong answer instead of either asking for more information or saying it just doesn’t know is equally annoying.
Because giving answers is not a LLM’s job. A LLM’s job is to generate text that looks like an answer. And we then try to coax framework that into generating correct answers as often as possible, with mixed results.
This is exactly right. AI can only interpolate between datapoints. I used to write code for research papers and chat gpt couldn’t understand a thing I asked of it.
You have to aggressively purge the current chat and give it more abstract references for context. With enough context it can rewrite some logic loops, maybe start a design pattern. You just have to aggressively check the changes.
I frankly only used those to generate pictures and sometimes helloworlds for a few languages, which didn’t work and didn’t seem to make sense. It was long enough ago.
Also I have ASD, so it’s hard enough for me to make consistent clear sense from something small. A machine-generated junk to give ideas is the last thing I need, my thought process is different.
I honestly don’t know how anyone’s been able to code anything predominantly using AI that’s production worthy.
Maybe it’s the way I’m using AI, and to be honest I’ve only used chatGPT so far, but if I ask it to generate a bit of code then ask it to build on it and do the next thing, by about the third or fourth iteration it’s forgotten half of what we talked about and missed out bits of code.
On a number of occasions it’s given me a solution and when I questions it about the accuracy of it and why a bit of it probably won’t work I just get oh yes let me adjust that for you.
Maybe I’m doing AI wrong I don’t know, but quite frankly I’ll stick with stack overflow thanks.
It’s only useful for stuff that’s been done a million times before in my experience. As soon as you do anything outside of that, it just starts hallucinating.
It’s basically like how junior devs used to go to stack overflow, grabbed whatever code looked like it would work and just plopped it in the codebase.
I remember talking to someone about where LLMs are and aren’t useful. I pointed out that LLMs would be absolutely worthless for me as my work mostly consists of interacting with company-internal APIs, which the LLM obviously hasn’t been trained on.
The other person insisted that that is exactly what LLMs are great at. They wouldn’t explain how exactly the LLM was supposed to know how my company’s internal software, which is a trade secret, is structured.
But hey, I figured I’d give it a go. So I fired up a local Llama 3.1 instance and asked it how to set up a local copy of ASDIS, one such internal system (name and details changed to protect the innocent). And Llama did give me instructions… on how to write the American States Data Information System, a Python frontend for a single MySQL table containing basic information about the member states of the USA.
Oddly enough, that’s not what my company’s ASDIS is. It’s almost as if the LLM had no idea what I was talking about. Words fail to express my surprise at this turn of events.
Yeah, and the way it will confidently give you a wrong answer instead of either asking for more information or saying it just doesn’t know is equally annoying.
Because giving answers is not a LLM’s job. A LLM’s job is to generate text that looks like an answer. And we then try to coax framework that into generating correct answers as often as possible, with mixed results.
This is exactly right. AI can only interpolate between datapoints. I used to write code for research papers and chat gpt couldn’t understand a thing I asked of it.
You have to aggressively purge the current chat and give it more abstract references for context. With enough context it can rewrite some logic loops, maybe start a design pattern. You just have to aggressively check the changes.
Feels like it would be quicker and easier just to write the code myself at that point…
I frankly only used those to generate pictures and sometimes helloworlds for a few languages, which didn’t work and didn’t seem to make sense. It was long enough ago.
Also I have ASD, so it’s hard enough for me to make consistent clear sense from something small. A machine-generated junk to give ideas is the last thing I need, my thought process is different.