I’ve been watching a trend in engineering cultures, where shipping unreviewed, LLM-generated code isn’t just a shortcut people take in secret anymore, it’s not only openly allowed but actively encouraged.
When you ask users to pay for your software, integrate it into their daily workflows, personal lives, or build their own businesses on top of your platform you are asking them for a profound leap of faith. Yet, under the guise of modern AI ‘efficiency’, we are routinely betraying that trust by treating their data as a means of testing code we didn’t write and don’t comprehend. We are trading quality for the illusion of velocity, and it’s time we start feeling embarrassed about it again.
We’ve reached a point where we’re able to generate more code than we are able to reliably review and understand. Where now instead of caring enough, or bothering enough to even try to, we’ve resorted to putting in guard rails such as generated unit tests, observability, logging as a means of limiting the damage we are about to release to our users.
“Testing can be used to show the presence of bugs, but never to show their absence!”
When you ship unreviewed code in an effort to quickly capture that user, you are treating their operational stability or their personal data as disposable collateral for your growth metrics. It’s a toxic relationship where you ask for their ultimate trust while giving them your lowest level of effort.
Worryingly this culture is something we’re no longer embarrassed about, it signals incompetence, it tells users they can no longer trust us and that we’re not taking our work seriously. This is not engineering excellence that we once prided ourselves on.
Today’s software is more unreliable, more unstable than it has been in recent years. Be embarrassed again.