Friday, July 24, 2026

The end of frameworks part 1: tools built for humans

For search readers, this essay treats human centered frameworks, development frameworks, software engineering, and the AI coding era as one connected transition.

Development frameworks have always looked like tools for computers. In practice, they were mostly tools for people. The real question is whether that kind of human centered framework still needs to keep appearing in the same way.

A self-made information card for The Mythical Man-Month explaining human-scale software work

<The Mythical Man-Month information card 1.1>

1. Frameworks reduced the memory burden of human developers

When developers talk about frameworks, productivity is usually the first word that appears. React, Django, Rails, Spring, Laravel, and Next.js all look like ways to build faster. But under the surface, the central function of a framework is not speed alone. A framework externalizes memory. It stores repeated decisions so that a person does not have to make the same structural choices again on every project.

Standard folder structures, routing rules, ORM conventions, authentication modules, build presets, deployment patterns, boilerplates, official manuals, and reusable components all reduce cognitive load. A developer does not have to ask where every file should live, how state should flow, how the database should be connected, or how the build should be wired. The framework creates rails so humans make fewer mistakes and teams speak the same language.

That is why the end of frameworks does not simply mean that tools disappear. It means the reason for creating new human centered frameworks may weaken. If fewer humans read, memorize, edit, and coordinate code directly, then rules designed primarily for human comfort become less central.

Framework element What it did for humans Why it mattered
Standard folders Reduced placement decisions Teammates could find code quickly
Presets and boilerplates Reused repeated setup Fewer early configuration mistakes
Components and libraries Avoided repeated implementation Humans did not rebuild everything
Official manuals Provided a learning path People needed a shared reference
Community patterns Stored repeated experience Teams avoided the same failures

A good framework was therefore a social contract as much as an execution tool. The computer did not care whether a project used Rails, Django, or Next.js. People cared, because people needed conventions they could remember, teach, review, and discuss.

2. Brooks explains why frameworks became necessary

Fred Brooks’ The Mythical Man-Month remains important because it explains why large software projects are not solved by simply adding people. In No Silver Bullet, Brooks separates software difficulty into essential complexity and accidental complexity.

Essential complexity comes from the problem itself. A payment system has money, permissions, refunds, settlement, fraud, security, and exceptions. A hospital system has patients, prescriptions, records, responsibility, and regulation. Better tools do not remove that core difficulty. Accidental complexity comes from awkward languages, painful builds, slow compilation, repetitive setup, poor documentation, and communication overhead.

Frameworks grew because they attacked accidental complexity. They helped developers spend less energy on routing, database plumbing, rendering rules, or integration boilerplate, and more energy on the actual business problem.

From Brooks’ perspective, a framework is not a silver bullet. It is more like a cleaning tool for accidental complexity. It does not remove the essence of software, but it lets humans stay closer to the essence for longer.

This makes frameworks extremely valuable in the human era. Standardization reduced memory. Manuals reduced learning friction. Components reduced repetition. Presets reduced avoidable mistakes. Frameworks mattered because humans were limited by memory, attention, and coordination.

3. Design Patterns was a shared human vocabulary

The same idea appears in Design Patterns: Elements of Reusable Object-Oriented Software by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. The book described 23 classic object-oriented design patterns, but its deepest value was not just code examples. It gave developers names for recurring structures.

A self-made information card for Design Patterns explaining reusable object-oriented software

<Design Patterns information card 1.2>

Names like Singleton, Factory, Observer, and Adapter became powerful because they compressed long design discussions into short phrases. “Use an Observer here” or “extract an Adapter” saved many sentences. That compression was for humans. It helped people review, explain, and coordinate software.

Framework conventions work the same way. Next.js App Router, Rails convention over configuration, Spring dependency injection, and Django batteries included are not just technical features. They are a human vocabulary for understanding a system quickly.

Human collaboration problem What patterns and frameworks offered What may change with AI
Design intent is hard to explain A named pattern compresses intent AI may use statistical similarity more than names
New teammates must learn quickly Manuals and conventions guide them If fewer people read code, manuals lose weight
Repeated design is tiring Components and abstractions reduce repetition AI can regenerate routine code cheaply
Code review needs standards Framework norms create review criteria Tests and harnesses may become stronger criteria

Human centered frameworks were therefore technologies for saving memory and agreement. They existed because people needed them. Machines ultimately execute state transitions, not manuals.

4. Popular technologies become easier terrain for AI

This does not mean every framework immediately becomes meaningless in the AI coding era. Today’s models still work on the code, documentation, open source projects, questions, answers, examples, and manuals humans have left behind. Widely used languages and frameworks are therefore easier terrain for AI.

GitHub Octoverse 2024 reports that Python became the most used language on GitHub and that generative AI and data science activity surged. Stack Overflow Developer Survey 2024 shows how strongly developers rely on API and SDK documentation, and how broadly tools such as Docker, npm, and PostgreSQL are used. The pattern is clear: the human development ecosystem becomes the map that AI has learned most deeply.

Here is the paradox. Human centered frameworks may stop being the main place of innovation, but the frameworks humans used most will become the safest recipes for AI. React, Python, PostgreSQL, Docker, REST, OAuth, HTML, and SQL are predictable because examples are everywhere. By contrast, internal DSLs, private company frameworks, and undocumented abstractions are unfamiliar territory for a model. This connects directly to the broader discussion around Software 3.0 and the AI coding era.

The key risk in the AI coding era is not simply whether a framework is used. The risk is whether the model has learned the terrain well enough. A tool familiar to humans is not always a tool familiar to the model.

Part 1 ends here. Development frameworks were built for people: standardization, presets, easy components, manuals, and design patterns all served human productivity and collaboration. As the human share of development shrinks, the need for new frameworks designed mainly for human comfort may shrink too.

Continued in part 2. The next part looks at AI recipes, executable assets after code, and the possibility of AI-native frameworks.

No comments:

Post a Comment

Yann LeCun and World Models: The AI Question After LLMs

Yann LeCun is one of the most useful people to read when the AI industry starts sounding too certain. He does not deny that chatbots and LLM...