Vibe-coding disasters and the return of handwritten code

Something is happening in developer communities right now that’s worth looking at — not because it’s a crisis, but because it’s a signal.

Two separate conversations are running in parallel across Reddit, Hacker News, and development Substacks. They seem unrelated. They’re not.


The r/programming experiment

On April 2nd, r/programming — one of Reddit’s largest programming communities, with millions of members — announced a temporary ban on all LLM-related content through the end of April. The mods framed it as a signal-to-noise problem: discussions about LLMs had displaced everything else, and they wanted to see what the community looked like without them.

The ban doesn’t cover AI in general — machine learning, technical breakdowns, and architecture discussions are still allowed. What’s specifically cut off is the constant stream of model announcements, “will AI replace me?” threads, and vibe-coding how-tos.

A developer who wrote about the ban put it clearly: the ban is a symptom, not a solution. The real signal is that developer communities are fragmenting along experience lines in a way that a general-purpose forum with millions of members can’t contain. Seniors want depth. Juniors want direction. Neither is getting what they need.

That’s a more honest reading than “seniors are luddites.” Developers with experience spent years building real systems before LLMs existed, and they’re watching the quality of conversations deteriorate in real time.


The handwritten code discourse

Separate from this — but not coincidentally — an argument went viral on Substacks and dev communities: “all the best programmers I know are starting to write code by hand again.”

The argument isn’t that AI tools are useless. It’s more specific than that. Still in mid-2025, even developers who enthusiastically adopted AI acknowledged that they spent more time rewriting generated code than if they’d written it from scratch — the models simply weren’t up to the task in many cases. That changed for some workflows. But the concern about what gets left behind didn’t disappear.

The term that keeps appearing is “slopification” — codebases that are easy to generate but painful to maintain. Functions that work but that nobody fully understands. Dependencies that nobody consciously chose. Tests that pass but don’t test the right things.

It’s not a marginal position. In February, a background piece described how developers who had been amazed by autonomous coding tools during winter break came back deeply uneasy — not because the tools didn’t work, but because they did work, in ways that raised uncomfortable questions about what it really means to understand the code you sign off on.

The return to handwritten code isn’t nostalgia. It’s a response to a concrete problem: when a codebase is mostly AI-generated, ownership is diffuse, and debugging becomes archaeology.


The monolith returned (again)

Meanwhile, another thread circulated and resonated with thousands of what they’re calling “tired engineers”: an article about ditching microservices in favor of a modular monolith.

The climate in 2026 isn’t “microservices failed.” It’s exhaustion: tired of chasing a bug through five services for what should have been a simple fix, tired of deployments that require coordination meetings, tired of “eventual consistency” turning into “eventual confusion.”

The insight the industry re-learned is that monolith doesn’t mean messy code. A well-structured monolith has clear module boundaries and defined interfaces between components — what’s being called a “modular monolith” — and delivers the organizational benefits of separation without the operational overhead of distributed systems.

The examples that keep appearing: Shopify runs one of the world’s largest e-commerce platforms on a Rails monolith. The famous Prime Video cost-reduction story came from consolidation, not from further division.


Why these two conversations are actually one

Here’s the thread that connects them.

AI tools accelerate output. That’s real and it’s not going to change. But the acceleration is asymmetric — it’s much easier to generate code than to understand it, debug it, and maintain it. Microservices made the same promise in 2018: more flexibility, more agile teams. What many teams got was distributed complexity they weren’t equipped to operate.

Both the backlash against vibe-coding and the return of the monolith are reactions to the same underlying dynamic: technical debt that accumulated faster than the team’s capacity to handle it.

Developers pushing back against AI-generated slop aren’t opposed to AI. They’re opposed to the gap between “it shipped” and “we understand what we shipped.”


What this means for dev teams in LatAm

This conversation applies differently for teams operating with smaller headcounts, tighter budgets, and more limited operational infrastructure — which describes most companies in LatAm outside the top tier of startups.

If your team of 5-8 engineers adopted microservices because that’s what the conference circuit was pushing in 2022, the modular monolith argument probably lands harder here than in San Francisco. Same with AI-generated code: the bottleneck for a small team isn’t generating features. It’s understanding and maintaining what already exists.

The signal from these community conversations isn’t “don’t use AI tools.” It’s “use them with an eye on what happens six months after you ship.”


The meta-point

The r/programming ban, the handwritten code discourse, and the exhaustion with microservices are all pointing to the same thing: the industry is becoming more honest about the gap between speed and understanding.

That’s not a crisis. It’s a healthy correction — and it’s probably going to produce better tools, better practices, and better questions than we had a year ago.