← Back to Blog

Context Engineering vs Vibe Engineering

Nicholas Dickey

I've been asked about what I mean by Vibe Engineering and how it is different from what is called Context Engineering. I will try to illuminate my vision here.

Here is what ChatGPT has to say about Context Engineering:

"Context engineering is the practice of deliberately designing, structuring, and maintaining the information that an AI model sees so that it behaves consistently, predictably, and usefully over time."

Sounds exactly like what I am trying to do over the course of the Vibe Engineering video tutorial on creating a SaaS ChatGPT App, doesn't it? But there are two differences, one related to the goals, and one to the scope.


1. Over time vs. repeatedly

In my mind, Vibe Engineering's goal is also shaping the AI model's behavior and outcome over time, but it adds "repeatedly" to the set of primary goals. Being able to recreate the component being engineered from scratch is a crucial objective of Vibe Engineering, to compensate for the lack of hard software engineering skills in the maintenance of production code. With time and gained experience, this could become less of an objective, but for yesterday's "vibe coder" who tries to apply their new abilities to produce commercially viable applications or systems, being able to re-create from scratch is both a goal and a constraint. It limits the scope of what is possible, which leads us to...

2. Scope

While a professional software engineer (note, I am not talking about proud "coders" and "hackers" who will be washed out of the industry in the next few years) is capable of architecting and designing complex applications, systems, and platforms that can be structured into small-enough components to be developed with the help of AI agents (and Context Engineering), understands how to collaborate with other engineers by establishing clear boundaries, protocols, and responsibilities between components, and understands long-term processes such as technical debt, maintenance, upgrades, and migrations, the newly minted Vibe Engineer has to stick to what is practical to accomplish using re-creatability as a safety net in terms of long-term processes. Upgrade? Why not just recreate the app in the new environment? Etc.

This necessitates a limited scope of what is possible today: applets, widgets, servlets, MCP servers, APIs, etc.

Conclusion: These two characteristics differentiate Context Engineering from Vibe Engineering today. What do you think?

Comments on LinkedIn.


Blog chat here.