I suppose the description is rather in-accurate, but the title is pretty self explanatory.
AI is not a good coding buddy, because it was never designed to be one.
The Problem
When people made "AI" (It's not actual AI. More on this later!), they didn't intend for it to be helping, they intended it to do the coding. See the issue? "AI" is not designed to assist you with the code, it was designed to write it, and take the human part of dev, out of the equation. And some well known models (chatgpt-4o, and others), are proving that this approach is ineffective, because people don't yet trust "AI" to write their code for them. But why? I mean, it seems like an enticing concept... doesn't it? I mean, I've spent all day today trying to get this blog working, only to spend hours writing. This could be so much easier if I used "AI" right? Wrong. sort of.
The real "AI"
The real "AI" doesn't exist yet. Let me make that clear. What we have isn't artificial intelligence, its a "living" not-breathing, math equation.
The truth is, what we have is called an LLM or large language model. It simply returns the computed probabilities of a response in the form of human language. It isn't thinking at all. A math formula decides how it works, and what it responds to you with. That's NOT AI, that is a math equation. See the issue?
With that kind of system, the LLM begins to hallucinate, because of the information provided to it (I won't be getting deep into that). That's why people don't use it.
The point
The entire reason, for my points are the following common sense logic:
Number 1. It's math
Number 2. It can't see your words
Number 3. It was designed to write the code, not help someone write it
So how can an "AI" help you write code, if it was designed to do it by itself? Now, by itself, it wouldn't be that bad, but, it does have one problem. And that is, the training data the model is provided with. The developer world is constantly changing, and will never be the same as it was a few years ago. But, that means that the data the model was trained on, is inaccurate today. The features have changed, new ones added, etc. That makes it incredibly difficult for the model to work, if the data it's trained on, makes it provide solutions that don't work anymore.
The solution
There are two ways to solve this problem.
The first, is to stop using models all together. Models are great, but they don't have the ability to access the information in real time.
The second, is to use a model that has the ability to access the information in real time. That's what is arguably, the better option in this case.
Conclusion
I hope this article helped you understand the limitations of AI, and how it can be used to help you write code, but not as a coding buddy. I'm sure you can agree that it's a great tool, and can help you write code faster, but it can't do everything.