I've been working with an AI on a new project. For the most part, it has been a fantastic experience. It writes boilerplate code in seconds and remembers obscure command syntax that I would have spent an hour searching for. I was starting to think it was the perfect junior partner.
Then it drove the project straight into a wall.
The project is called pi-server-vm
. It's a tool to create and clone virtual Raspberry Pi servers in VirtualBox. The main requirement was simple: the virtual machines had to act exactly like real Pis on my local network. My other tools needed to find them, and I needed to access them from any computer in my house.
To be fair, I could have been clearer. We'd discussed the need for it to work on larger networks, but the conversation kept getting derailed by new bugs. An AI's context can drift when you jump between topics, and if I'm being honest, so can a human's.
I hit a bug. A frustrating one. My discovery tool, nmap
, couldn't see the VMs, even though I could connect to them directly with PuTTY.
I described the problem to the AI. It instantly came back with a clever solution: create a private "Host-Only" network inside VirtualBox. It was a beautiful, self-contained, and technically elegant fix. We spent hours implementing it. We configured services, enabled DHCP, and tweaked settings. The AI was brilliant, spitting out configuration files and commands faster than I could read them.
And it worked. The nmap
scan on this new, private network succeeded. The AI declared victory.
I had to be the one to point out that we had just spent all day meticulously solving the wrong problem.
The virtual Pis were now discoverable, but only from the single computer running VirtualBox. They were completely invisible to my main network, which violated the entire point of the project. The AI, in its laser-focus on fixing the nmap
bug, had completely forgotten the primary architectural requirement. It had no common sense.
That was the moment I truly understood how this partnership works. The AI is an incredible engine. It has all the technical knowledge in the world, but it has no wisdom. It doesn't understand the "why" behind a project unless you constantly remind it.
My role, as the engineer, is not just to ask questions. It's to be the project's memory, its architect, and its conscience. It's to know when a clever solution is actually a dead end.
We threw the whole Host-Only network idea in the trash and went back to the original, stubborn problem with the Bridged Adapter. It turned out the fix was to completely reinstall VirtualBox. A drastic step, but the right one.
The AI is an amazing tool. It helped me get there in the end. But it's a tool that needs a firm hand on the wheel. It doesn't have instincts, and it certainly doesn't have common sense.
That, it seems, is still our job.
I'm not sure if you were using github co-pilot or MS co-pilot, but I found it (MS Copilot) to be exactly as you said, it writes great code but lacks the context awareness to stick to anything that isn't singularly focused.
With that said try out Claude or even Chat GPT (The $20/month plan is pretty great honestly). They do a much better job of considering the project as a whole and not just hyper focusing on that one bug like you mentioned. I haven't used Claude code in a while but GPT even has project folders now so it will hyper focus on any chats within the scope of the project which is great for more advanced systems with many different scripts being utilized.