All notes

HALLODE / NOTES

AI can help you build it. Can you maintain it?

Vibe coding makes a first version easier. Keeping a system useful and safe takes understanding, judgment, and ownership.

It has never been easier to turn an idea into an app. Describe what you want, give a coding agent access to a project, and you may have something working by the end of the day. In that simple sense, yes: more people can build software now.

But “it works on my screen” and “I can run this for years” are different claims. The first is about getting a result. The second is about understanding what happens when requirements change, a dependency fails, or someone trusts the app with their data.

A first version is a starting point

A personal tool can be a great place to learn. You can try an idea, break it, ask the agent why it failed, and start again. That feedback loop is valuable. You do not need to master every part of software engineering before making something useful.

The stakes change when other people rely on the result. A small app that takes payments or stores private information may need more care than a larger app that only displays public content. Size is a poor measure of risk. Ask what could go wrong, who would be affected, and how quickly you could detect and fix it.

Fundamentals help you ask better questions

Knowing the basics does more than help you write code by hand. It helps you give the agent a useful brief and judge its answer. What data enters the system? Who is allowed to change it? What happens when two requests arrive at once? Where does the app fail, and what will you see when it does?

Imagine an agent builds a booking flow. The happy path works: pick a slot, click confirm, see a success message. Someone still has to ask what happens if two people claim the last slot, payment succeeds but the booking fails, or the same request is sent twice. A polished interface cannot answer those questions for you.

A capable agent can help find and solve these problems. It can also help you learn the fundamentals as you go. But you need a way to check its reasoning against the system you are responsible for.

Context is a product of understanding

When a prompt misses a constraint, the agent may produce a reasonable answer to the wrong problem. “Build booking” leaves out capacity rules, payment behavior, cancellation, and who can edit a schedule. A longer prompt is not automatically better; a clearer model of the problem is.

The practical move is to slow down briefly before asking for code. Describe the users, the important rules, and the behavior you need to preserve. Ask the agent to surface assumptions. If you do not know an answer yet, say so and use the agent to explore options before choosing one.

Ownership lasts longer than the session

AI can make a developer faster, especially when the task is clear and the result can be checked. It can also make an unfamiliar builder more capable. Neither outcome is automatic. Tests, review, monitoring, and a basic understanding of the system become more important as the consequences of failure grow.

The question I would keep asking is simple: if this breaks next month, will I know where to look and how to make a safe change? If the answer is no, the next step may be to learn the system before adding another feature. That is part of building it, too.