As a coder, I have some nuanced opinions about AI.
I’m an applications developer / designer, and I’ve been coding since I was a teenager. My first system was a Sinclair ZX80! My experience includes a progression through BASIC, C++, Pascal, and in recent years Python, PHP, and JavaScript. I was in graduate school when “hypertext documents” were all the rage! I’m firmly against all forms of what I call “black-box coding,” which involves coders using libraries or scripts that they do not understand or control, and which often include lots of code that they do not even use, but they “install” them anyway because they don’t know what they actually need for their projects. I’m strongly in favor of actually knowing what your code does. Increases in processing power have obscured a lot of very sloppy code management.
To me, coders have put themselves in danger for a while now with this sloppy behavior. It makes sense that unskilled coders would now rely on AI, as it just feels like one more step in the direction of not knowing what’s in your code. If you have been installing mammoth libraries, frameworks built on top of frameworks on top of frameworks, and package-management to “install” and maintain everything, it makes sense that the next step would be to just use AI to code whatever else is left to do. If you’re using AI to do your coding for you, you are probably someone who has been inching towards obsolescence anyway.
It’s always going to be faster for me to code applications myself than to use AI. Also, AI can only really help with rudimentary “line-by-line” stuff. Being able to code effectively involves knowing how to bring various tools into play at different times, and knowing where to put your code in the first place. I don’t see AI being able to arrange all that for you.
With all that out of the way, I will say that I have begun using AI for a particular role in my coding. After my code is done, I will allow AI to do a kind of read-over and let me know if it sees anything wrong or missing. It’s pretty good about that, especially if I document my code really well, which I always do. AI will find little bits here and there where I might have made a mistake.
But here’s the thing: quite often, after AI has checked my code, it will come back with suggestions. Sometimes it’s helpful, sometimes it’s not. But about 50% of the time, AI actually suggests errors. I will then respond with something like, “Wouldn’t ABC logic have to be placed before XYZ logic” or “Isn’t it faster to do it like XX”? And 100% of the time, AI responds with something like, “You’re right! My apologies. Here is the corrected code, with your suggestions…” I laugh out loud at moments like that and wonder, “Who’s helping who here?”
Since Chat GPT emerged a couple of years ago, if you ask me, it’s going backwards. Its coding suggestions have gotten worse, with more mistakes and needing more oversight.
I understand that this is where we are at right now, and it might change a lot in the coming years. Let’s see!
AI is getting smarter, but replacing programmers entirely? That’s not happening anytime soon.
What AI Can Do
AI can already generate code, debug simple problems, and automate repetitive tasks. Tools like GitHub Copilot and ChatGPT can speed up development by suggesting solutions, writing boilerplate code, and even fixing errors. This means junior-level, repetitive coding tasks are becoming more automated.
What AI Can’t Do
Programming isn’t just about writing code—it’s about solving complex problems, understanding user needs, designing scalable systems, and making strategic decisions. AI lacks:
The Future of Programming
Instead of replacing programmers, AI will enhance them. Future programmers will spend less time on repetitive coding and more time on high-level design, debugging, and decision-making. AI will become a powerful assistant, not a replacement.
Who Should Be Worried?
Who Will Thrive?
Bottom Line
AI won’t replace programmers—it will replace bad programmers. The best developers will learn to work alongside AI, using it as a tool to build even better software.