Should we check what AI produces?

Share
Should we check what AI produces?
Haven't you head - even AI needs books!

Uncle Bob recently sparked some debate online by expressing a somewhat “controversial” opinion amongst software developers. Simply stating his strategy of not checking code produced by AI because it slows down productivity [1]. Upon first reading the short X entry, the follow-up, and the ruckus around the web changed my mind a few times about how I felt about it but more importantly what the takeaway should be. LLMs generated code is increasingly capable and the conversation usually revolves around productivity. This and many other narratives keep making me think we should be worrying more about accountability [1] .  

First Reaction

When people technical or nontechnical create AI projects they otherwise wouldn’t build, (usually due to lack of time) it seems magical. In many ways it is. I remember my first interactions with Loveable and continue adjusting and tweaking on my phone never missing a beat for 3 days straight until everything operated as expected above the surface. Improvements come daily it seems, but I haven’t found the implementation of a large project without errors, and this is to be expected. Software development can’t be boiled down to a set of prompts of agentic system working to max out all tokens, yet. The day may come but I don’t think we are there yet and for that reason I immediately said, Uncle Bob is wrong.

My thoughts range from:

·        Easy to say he’s already made a career and can build small utilities that play well with guards and constraints without real world value.

·        The examples proposed were small utilities in nature.

·        Feels like backpedaling on clean architecture as a good practice.

 And they were in part correct but missing the premise – AI productivity is hindered by our speed. Productivity and speed are important, but I think they shouldn’t overcast correctness and accountability and like many balancing acts in software development compromises are usually made.

Maybe Uncle Bob has a point

               The point he is trying to make is that for him looking at code doesn’t offer any value anymore. Instead of becoming a bottleneck it’s faster to remove himself from the equation and that’s acceptable at least on the sample set he provided. So how can we have two things be true? How can we keep the advertised productivity gains without knowing the system or the bugs introduced to be found by users down the road, or worse exposed through a data breach. These are not anecdotal references by any means, studies like Debt Behind the AI Boom [2] and Security Vulnerability in AI Generated Code [3] drive this point home.

               This is the argument Uncle Bob didn’t make with his opinion. If you want to be extremely productive don’t check the code produced by AI. Apply the video game development adage: if it looks right, it’s right. This is what he didn’t say, it works if you aren’t the one maintaining or required to know what the codebase is doing. At the enterprise level I don’t think that’s possible but there are many people claiming they are successfully setting frameworks and pushing out products regularly without knowing any specific details. Platforms like base44, loveable, and Replit are examples of higher abstractions but the same can be accomplished with Claude Code, Cursor, or Windsurf to name a few popular western products. Wasn’t Jensen Huang that said, “everyone is now a programmer”, this oversimplification of what programming is closely aligns with the shift towards productivity over expertise. We are no longer experts. Since we are no longer the experts than not having to look at the code produced is not a big leap.

Misunderstood Expertise

 

As the technical resource of any organization, we tended to field questions on what a system could and couldn’t do. We provided tradeoffs and timelines. We were both popular and unpopular depending on how those answers affected roadmaps.

AI on the other hand is a more agreeable expert who doesn’t say no often enough and cuts down the timeline by many orders of magnitude. These gains reinforce the premise that adding human expertise to the AI first approach is like adding ten speed bumps to a street that’s a mile long. Should we add speed bumps and how many are a good balanced amount? Not having any is not good enough but too many strips away the benefits. The harder problem is perception, most people who want their ideas brough to life still don’t understand what programming is and the main reason Jensen comments irk many developers. Bigger issue, most people ignore the summary provided by AI after a task is completed.

The answer most likely remains the boring one – education. Just like Uncle Bob not needing to read the code there are influential individuals telling you AI can solve all your problems even taking that job you didn’t want to be doing anyway. The biggest trick the devil ever pulled was making you believe he wasn’t real – AI is killing the drive to research, to learn, and to remain curious. Is it though?

Accountability

               Are we accountable for our opinions? Are we accountable for our education? We should be. Uncle Bob should be. Sure, he expressed an opinion, but it is an opinion that had over 5 million views. It is the same for the things we create and let loose in the world. There are no perfect systems, but I’ll share the one I follow.

               I have strict constraints on architecture patterns, testing, etc. for code generated by AI. I’ll let agents multitask, follow a spec, or loop until a desired outcome is met. From that point forward I request detailed summaries of everything done, architecture diagrams, and productivity stage is done. My turn now is to check and make sure bugs were not introduced. Review core systems and security before proceeding further. I rather be the bottleneck and a gate that says to anyone else I am responsible for this thing. In essence, building with AI instead of having AI building everything since a tool can’t be expected to assume responsibility anymore than your dog for not doing your homework.

               This is true about learning. Sure, AI can write wonderful essays, letters, cv, thesis, you name it but what’s the fun in that. Instead use AI to learn. When I don’t know how to leverage a specific azure service, I ask AI for steps to implement, for tradeoffs, for benefits, to compare pricing and decide after learning more about it instead of simply saying do this and be done with it.

Yes, Uncle Bob had a valid point that missed the responsible portion of the argument but hey he’s as perfect as the systems build entirely with AI without human intervention. Remain accountable, I am sure it will keep getting better over time.

 

              

1.        https://x.com/unclebobmartin/status/2080257779395154409

2.        https://arxiv.org/html/2603.28592v2

3.        https://arxiv.org/html/2606.23130v1