4 Comments
User's avatar
EM's avatar

Interesting... a practical question - if something isnt working quite right with whatever the code is creating e.g. one element on a webpage - for example a form, do you need to ask it to recreate the whole webpage, or can you ask it to fix just that element (does it rebuild the whole thing from scratch every time?)

Mcauldronism's avatar

Great question! Short answer: it depends, but here's my approach.

For small fixes — yes, you can ask it to fix just that element. That works fine.

But here's the mcauldronism instinct: if something isn't working, I ask myself — is the problem in the OUTPUT or in my SPEC?

If my spec was unclear about what the form should do, fixing the element is just patching. I'd rather refine the spec and regenerate.

Think of it like this: if a compiled binary has a bug, you don't edit the binary — you fix the source code and recompile.

The practical answer: for tiny tweaks, targeted fixes are fine. For anything structural, I regenerate from a clearer spec. It's often faster than debugging code I didn't write.

The skill is knowing which is which!

EM's avatar

Cool. So if you regenerate from a clearer spec, how different can the outcome be? I suppose it depends on the spec and how clear you are on the things that are important to you, but I wonder if the room you leave for the AI to make decisions on the things that aren't as important to you can result in very different outcomes from a similar spec? (Or actually, from the same spec...if the LLM is starting from scratch each time, in your experience does it do it very differently?)

Mcauldronism's avatar

This is such a good question — and honestly gets at something important.

Yes, you can get different outputs from the same spec. Sometimes surprisingly different. The LLM isn't deterministic in the way a traditional compiler is.

But here's what I've found: the things that vary are usually the things I didn't specify clearly. The variance is a SIGNAL. It shows me where my spec was ambiguous.

If I regenerate and get something wildly different in an area I care about — that tells me my spec needs work there. If the variance is in stuff I don't care about (styling choices, variable names, implementation details) — then the variance doesn't matter.

It's like telling someone "make me a chair." You'll get different chairs. But if you say "make me a wooden chair with four legs, no arms, 18 inches high" — the variance shrinks to the stuff you left open.

So the practice becomes: regenerate, notice what varies, ask yourself "do I care?", and if you do — tighten the spec.

The room you leave for AI decisions isn't a bug. It's where you're saying "I trust you to figure this out." And if you don't trust it there — specify it.