By
Steve Bailey

Human in the Loop

Human in the Loop

Think of coding AIs as brilliant new junior programmers. You can see that they have mad skills, but they wander, forget what they decided yesterday, and occasionally ignore you entirely because they think they’ve found a “better way.” In other words: smart, fast, and absolutely in need of supervision.

That’s why AI coding is absolutely pair programming. If you tell AI to write a spec, you have to read the spec and approve it before moving on. If you have AI write a technical design, same thing. And if you tell AI to write code? First, never give it carte blanche to run any script, unless you want all of your files to be deleted by accident. Review the plan, approve every step, and keep an eye on what it’s doing. Every time. All the time. You must watch the messages being presented while AI is working. Sometimes an AI will “fix” a tiny issue by restructuring your entire database or get stuck in a loop repeating the same mistake. It’s on you to catch that, redirect it, or hand-code the fix. Then, when AI is done writing code, you have to review the code and test it yourself. Even if AI said it already tested everything for you.

And, when you come to work tomorrow? AI will have forgotten everything that you decided today. So, whatever corrections you needed to make during your working session, you must immortalize them in the documents being used to instruct AI on how to build specs, plans, and code. When things go wrong, look at the descriptions in your commands, update them regularly, and ensure AI is following them. When sessions are long, AI sometimes forgets where it was, and must be reminded to follow them. For this reason, always start every new day with a new chat (and sometimes start a new chat within the same day) that clears all the old (and confusing) context. 

This is new coding. A lot of sitting and watching and reading what the AI is thinking. Slightly boring most of the time, but it is also very high-performance throughput. Then, when things go south, or AI can’t figure out how to solve a problem, or there are three ways to solve a problem, you have to step in, apply your skills, make the decisions, fix the code manually, roll back and try another approach—whatever is required. 

AI is only helping you. Your ability is what determines the final outcome. When you work together in this way, you go fast, get a lot done, and you are absolutely aware of everything that has been done, how it was done, and why it was done that way. If you don’t do it this way, the best you can hope for is code that does what you asked it to do, but that is also rigid, low-performance, hard to enhance, and that no one understands—not to mention your maintenance costs will soar (yes, despite using AI). 

AI is a tool. Nothing more, nothing less. The human in the loop is what determines the quality of the finished product. The AI just helps you get done quicker and maybe go a little farther. You bring the knowledge and experience. But you cannot move beyond the knowledge and experience that you possess. However, what you can do is apply that knowledge and experience faster and with better results. AI is a “time to market” lever. It has mad skills, but it does not possess the capabilities that are the keys to success. Only you can provide those. Anyone who lets AI do their job for them will soon be disappointed. And unemployed.