CyködCyköd
Back to all posts

[ AUG 3, 2026 ]

Getting AI to just try the soup

Author Pascal Rettig  |  Written by a Human


the soup

A joke that my mind keeps coming back is told by one of the Eddie Murphys at the end of the classic '90s comedy Coming to America:

A man goes into a restaurant, he sits down and he's having a bowl of soup. He says to the waiter:
Man: Waiter, come taste the soup.
Waiter: Why? Is there something wrong with the soup?
Man: Just taste the soup.
Waiter: What's wrong with the soup? Is the soup too hot?
Man: Just taste the soup.
Waiter: Is the soup too cold?
Man: JUST TASTE THE SOUP!
...
Waiter: Fine, I'll taste the soup, where's the spoon?
Man: Ah ha!

This is how it feels sometimes working with AI - if you can just figure out how to get AI to actually taste the soup - run the code, see the website - you'd be golden because that wonderful feedback loop would kick in. Being able to actually see the output of its work allows the AI to work autonomously to fix any issues and move the project forward.

The goal then, of working efficiently with an LLM is not to try the soup yourself - it's to set up your environment in such a way that it is tasting the soup and noticing there is no spoon.

I would be hard-pressed to outline all the different ways an LLM has told me it has finished something, only for even the most cursory review of that thing to clearly show that there are major gaps in the implementation. Login forms without login endpoints. Front-end React UIs that are connected to entirely imaginary backends that don’t exist. Data fields that don't exist despite an OpenAPI spec. The list goes on.

Each time, I have to overcome the desire to just "fix the glitch" and instead think deeply about why it happened. It could be a missing constraint-did the LLM sneak in a hand-written type (or is it using no types at all?) instead of something derived from an OpenAPI spec? Same with the tests-are they actually testing against real backend data, even if they are mocking the network call? Did the LLM not actually try the code before declaring it done? Can the LLM try the code - does it have Playwright CLI access and credentials it can use?

Sometimes it has all these things and still decides to conserve some tokens. This is when reviewing potentially conflicting instructions in its documentation, or as a last resort, reiterating with IMPORTANT:, comes into play.

Alternatively, did the project end up in the dumb zone? (in my mind. >300k tokens on Claude Opus 1m is less than ideal) If that's the case then the project breakdown and phasing might be at play.

All this is to say, with LLMs, solve the process not the problem. With the right process, very often the problem solves itself. With the wrong process, the problem, in many different guises, will appear again and again, and again.

Keep reading

JUL 1, 2026

Escaping the Claud-ottery

Many of you remember that feeling of doing the first few rounds of incremental development with Claude code and being surprised and impressed with what it was...