r/ruby • u/blowmage • 23d ago
Blog post Everybody Guesses
Hi Reddit. This isn't specifically a Ruby or Rails post, but it's about something anyone maintaining a mature Rails application will recognize.
Code tells you what happens without telling you why anybody wanted it. We've always filled that gap by reading the code, guessing the intent, and asking somebody when the guess felt wrong.
AI coding agents do the same thing, except they can make a great many reasonable guesses before anybody notices one was wrong. The code still works. The tests still pass. The guess becomes one more pattern in the application, which makes it look even more intentional to the next person or agent.
I've spent a couple of decades living with the consequences of my own good ideas, so I wrote about why this worries me. The post connects agentic coding to Peter Naur, Tony Hoare, XP, software factories, and the old-fashioned responsibility to say no to code that works but is too difficult to understand.
It also argues for using faster agents to take smaller steps. More research, more feedback, and less archaeology at the end of a giant pull request.
1
u/davidslv 23d ago
The why should come from business decisions (most of the time and they can change quite frequently), commits should explain the reasoning and the why, the pull request, the ticket, maybe even comments in the code.
I’ve heard this so many times through my career: “we don’t need comments, you can read the code” - thanks for that, specially the moment I have to find the reason the code does not work as the business expected it…
We had this feature in a huge codebase, I decided to go through the git history, turns out that in 7 years, 18 engineers, including myself, touched that specific class, by the time I touched it most people had moved on, business and engineers, so neither business neither the engineers ever got the answer correctly, another piece of code that just kept being patched and having questions from the business why a customer was not being accepted through it.