Protect Your Eggs

Writing · 13 Sep 2026

Protect Your Eggs

Building a game with my seven-year-old

On Sunday 13 September my son Jurre (7) and I built a game. He plays Roblox on his iPad, I wanted to see what happens when a child gets to steer an AI agent himself. By the evening there was a multiplayer game with a name, an icon and a web address: Protect Your Eggs. This post is about how that went, what the game does, and who took over when.

The prompt

I only typed one line to start: let us develop a game that is a cross-over between Minecraft, Flappy Bird and Roblox's Steal an Egg. HTML5 and Three.js, because I know that runs well on every platform, from a Linux laptop to an iPad. The agent was Claude Code on the Framework 12 with Omarchy, the same machine I write these notes on. Twenty minutes later there was a blocky field with four bases, a market with eggs in the middle, bots that steal, and a player that flaps like a bird. It ran from a file on disk, no server, nothing installed.

That was my part. Then Jurre sat down.

Sunday afternoon: Jurre at the Framework 12, typing the next improvement himself, his iPad on the floor beside him
Sunday afternoon: Jurre at the Framework 12, typing the next improvement himself, his iPad on the floor beside him

Jurre takes the keyboard

He knows Roblox better than I do, so he typed the improvements himself. Literally: a seven-year-old at the keyboard of a Linux laptop, typing in his own words what he thought would be cool. That you can buy guards. That there are more monsters the higher your level. That at nine in the morning on a Saturday there is admin abuse during a thunderstorm. That you can buy a treadmill up to level 100, and a lock that keeps everyone out of your base but also keeps you from grabbing eggs. Later: mythical, secret, eternal and divine eggs, and that you can choose how long a round lasts.

This is one case where natural language programming wins. He verbalises the mechanics he finds fun, and a few minutes later we try them. The real exercise for him is finding the words: what is wrong, what could be better, what would be awesome. I think that skill has a return far beyond game development.

The first version on the screen: a blocky field, four bases, eggs on the market, bots on their way to steal
The first version on the screen: a blocky field, four bases, eggs on the market, bots on their way to steal

Twelve minutes

I was in awe of the speed. He was not. Halfway through the afternoon, while the agent rewrote the game for multiplayer, he sighed: we are already waiting twelve minutes, dad, this is taking so long. Perspective changes quickly. For me twelve minutes for a game server is science fiction. For him it is the time between an idea and the moment he can play it, and that felt slow. I wrote in Rapid Iteration in Agentic Loops that the loop should be as short as possible. A child tells you the same thing without the theory.

The iPad, his way of playing: touch controls over wifi from the machine in the homelab, on the floor and on the sofa
The iPad, his way of playing: touch controls over wifi from the machine in the homelab, on the floor and on the sofa

On the iPad

He wanted touch controls, because that is how he plays. So we set up a small server on the machine in the homelab and played the game over wifi on his iPad, with a Roblox style thumbstick and a big jump button. That also turned the game into what it is now: real multiplayer. Up to eight players, empty seats filled by bots, and when the first human joins a bots-only room, the round restarts so the goal, first to level 10, is fair. He tested, I fixed. The skip button of the tutorial that did nothing on the iPad, the shop buttons that hid under the controls, a blue bar at the bottom of the screen. The excitement during debugging is energising.

YOU WIN: level 10 reached, the first time he beat the bots
YOU WIN: level 10 reached, the first time he beat the bots

Dad takes over

A game that lives on a laptop on the coffee table is a toy. A game with an address is a product, and that step was mine. The evening went into the things a child does not see: a name, chosen by Jurre, and a logo. A domain, protect-your-eggs.dsd164.com, and the same chain I use for my other apps: the server in the homelab, behind the cloud. A page on privacy and child safety, written so that a child can read it: no data collection, no chat, rude names are replaced automatically, no accounts, no ads, no purchases. An icon so it can be pinned to a home screen. Metrics, so I can see how many people play and how the server holds up. Not the fun part, but the part that makes it real.

Jurre wins! The round he played from the sofa while I watched the results screen on the laptop
Jurre wins! The round he played from the sofa while I watched the results screen on the laptop

The game

Protect Your Eggs is simple. Grab eggs from the market in the middle, carry them home, put them in your nests. Eggs in your nests pay coins. Coins fill your level bar and buy guards, extra nests, flaps, boots, a bigger base, a hammer and the treadmill. Others steal from you, you steal from them. Every level adds a monster. Thunderstorms bring extra eggs and lightning. ADMIN ABUSE brings moon gravity, egg rain or giants for fifteen seconds. Rounds last five minutes, the first to level 10 wins. It works with keyboard and touch, on a phone, a tablet or a laptop, in the browser, for free.

The screenshots are from today. Things will change, this is the first day of a game.

Today's screens: keyboard play on the laptop, and the touch layout with the Roblox style thumbstick and jump button. Work in progress
Today's screens: keyboard play on the laptop, and the touch layout with the Roblox style thumbstick and jump button. Work in progress

Jurre's piggy bank

One more thing he asked for. Jurre is saving for his first real laptop, and he wanted a way for people to help. So there is a piggy bank button in the game with a one-time payment link: drop a coin in Jurre's piggy bank. Every cent goes to him. No subscriptions, nothing unlocks in the game, no tracking, completely optional. Cannot donate? Tell your friends about his game, that helps just as much.

The start screen: a name, PLAY, and Jurre's piggy bank
The start screen: a name, PLAY, and Jurre's piggy bank

Conclusion

What I learned on this Sunday is not about the agent. I already knew it could build a game in an afternoon; I wrote about three games in three weeks in February. What I did not know is how naturally a seven-year-old takes the wheel when the only skill required is saying what you want. He did not learn to program today. He learned that an idea, said out loud and clearly, becomes a thing you can play. The waiting, twelve minutes at most, was the hardest part for him. I suspect that for his generation it always will be.

← More writing