Buy what you need,
without keeping count.
We buy extra just in case. You never quite know what is left, and being wrong costs more than grabbing a second one. Knowing for sure would mean keeping an inventory up to date, which costs more than the problem it solves.
Live app (interface in French). Each screen is explained in English in the case study.
Four principles.
The inventory is not maintained. It fills itself.
Ticking an item off in the shop puts it in stock. The receipt says how much. No data entry was added to make Walou smarter: the data already existed, it was in your pocket.
The shopping date becomes the unit of measure.
“Enough” means nothing on its own. Walou does not compare stock to a threshold, it compares it to the date of the next shop. Nothing to plan: one date is enough and the rest follows.
You state your consumption once. The app adjusts it after that.
You tell Walou you go through roughly this much a week. It corrects itself from there, by watching how often the product comes back. Nothing to keep up to date, and the final say stays mine.
When Walou does not know, it shows nothing.
No default zero, no “neutral” grey dot. An absence looks like an absence, because a made up number costs more than an empty field.
Focus.
Enough, but for how long?
“Do we still have flour?” “Oh yes, we have plenty.”
From presence to date: problem · decision · what it cost
The first version did two things: a shopping list, and an inventory of what is in the house. It answered “do I still have any”. Out shopping, in the dried fruit aisle, I wondered whether I had enough pecans for my granola for the next five days. Right then a couple walked past me. “Do we still have flour?” “Oh yes, we have plenty.” Those are two different questions, and Walou could only answer the first. I took one bag instead of two, and hoped.
Anchor the app to a date. “Enough” means nothing on its own. It only means something relative to the next shop. Walou stops saying what is there and starts saying whether it lasts. That means knowing quantities, when the first version had made exactly the opposite call: a presence, never a number.
The founding rule was that the app only states facts it actually holds. An estimate is not a fact. Rather than drop the rule, I moved it: Walou may estimate as long as the estimate shows, and as long as its ignorance shows too. It can now be wrong in front of everyone.
The rule, held in four places
Walou had a founding rule: only state facts it actually holds. The V2 turn forced it to estimate, so the rule had to move rather than break. A moved rule is only worth something if it holds everywhere, including where nobody goes to check.
It holds in four places that have nothing to do with each other, and two of them are invisible on screen. Clearing a quantity field deletes the value instead of writing zero, because a zero would claim there is none left. A line with no stated consumption shows no grey dot, which would read as an opinion. The receipt reader shows the gap between what it read and the printed total. A composite format arrives unticked rather than resolved at random.
These are not four features. They are one decision, taken again at four different depths: two in the interface, one in the data model, one in a parsing algorithm.
“Putting the shopping away and entering numbers are two separate gestures, and the second one never happens.”
From entry to receipt: problem · decision · what it cost
This second version went live with quantities to be entered by hand. After four days of real use, I was not entering them any more. Not out of carelessness: putting the shopping away and entering numbers are two separate gestures, and the second one never happens. Without quantities, everything else goes dark. A freshly shipped version had just shown that it did not hold.
Do not make data entry lighter. Remove it. The quantity bought already exists somewhere: on the receipt, which is in your pocket as you leave the shop. Walou reads the receipt and offers what it understood. Entering it by hand still works everywhere, it is simply no longer necessary.
Precision at any given moment. Walou knows roughly, never exactly. That is the price of the data arriving on its own, and an estimate that exists beats an exact figure nobody ever types.
The shortcuts turned down
Two more comfortable routes were ruled out. Retailer data, which would have made the app depend on a shop. And a general purpose reader, held in reserve for as long as one reader per retailer was enough.
Two days after release, a shopping trip abroad produced a receipt from a third retailer nobody had planned for. The reserve became the job in hand. That is the price of the approach, it was foreseeable, and I paid it sooner than expected.
What matters sits elsewhere, and it has not moved. Walou never fills in stock in silence. It offers what the receipt says, or the sum with what it already knew, and lets you correct. One confirmation for the whole shop, not one question per product.
The outcome.

In daily use, by two people.
Walou is used for real shopping, in a shared household: two accounts, one stock. That use produced these shifts, and it will produce the next one.
The horizon turned into an instrument.
Friends coming over at short notice. We need sun-dried tomatoes. Push the shopping date out two days, read how many that takes, buy that. The marker built to answer “does it last” also finds, once you move it, how much to buy. Nobody planned that gesture.
What the app still does not do.
Walou never suggests a quantity to buy. It says whether it lasts, and lets you move the date to find the right number. The answer can be read, it is not handed to you.
The real world decides, never the code.
Every version came out of a shopping trip: a question in an aisle, a gesture I had stopped making, a receipt no reader could handle. Not one of these shifts came from reading the code. Each came from a trip to the shop. Using the app yourself every day leaves no room: it tells you what does not hold before you have had time to grow attached to the previous answer.

Swiping a row was ruled out twice: on judgement, then with the gesture measured on the device. It added nothing a tap did not already do. And a display fault stayed invisible for weeks because the mockup frame was narrower than real phones. A mockup is not a device.
“What do I need to buy? Walou.”
Walou means “nothing”, “nada”. It is the answer you hope for in the aisle, and it became the name of the app. The project started from something plain: we throw food away because we buy too much, and we buy too much because we are afraid of running out. Walou does not ask anyone to buy less. It takes the fear away, and the rest follows.









