Taking Back the Fun.

Games 3 of 3

When was the last time you decided to have fun?

What did you do? Did you eat something, drink something, go out or stay in? Did you make a plan, or just hope it would work out? Sometimes the fun we plan just doesn't work out, does it? Now the useful part: we can apply what we've learned to build fun on purpose. After all, it's your life, and you deserve a little fun.

Maybe it's been a while. But it's not hard. I recently decided I wanted to learn to build with AI before the ground shifted again. I could have done it with a stack of books. Learn Codex, learn Claude, pick up a new language or two. I have the discipline to sit down and grind through that. But nobody was making me do any of this. It was useful, but not required. So I decided to make it fun, because fun is one way to stick with something that you don't have to do.

The Method • MDA

Two pages ago we found a recipe for why fun exists. Last page, we discussed what makes a thing fun. Now let's talk about a recipe we can cook with. Game designers call it MDA (Mechanics, Dynamics & Aesthetics). It's used for making games, but strip out the games and it works on almost anything you make or do.

Here's the trick: you build from the bottom (Mechanics), but you feel from the top (Aesthetics). Fun is downstream, which is why "just make it more fun" never works -- you can't pour it in. You can only choose the mechanics and let the rest emerge.

For example, those same three layers are considerations when building a slot machine: someone tunes the mechanics so the dynamics keep your thumb moving, then wraps it in a theme pretty enough that you feel just enough to stay. Same tools. The only question is whose hand is on them.

So take it back. You don't find fun lying around, you build it, into almost anything, whether you have to do it or not. Take the thing you've been dreading. What's the smallest mechanic you could add -- a timer, a streak, a score, a rival, a deadline or plotline you actually care about? Run it and see what emerges. That feeling at the end is what you were after, and you built it on purpose.

Which brings me to the last thing I made because I wanted to. It's Missile Command. You get to defend New Jersey. The rocket is too fat, the physics are a little wrong, and the aliens are having the time of their lives. But it was my answer to "how do I make learning JavaScript and AI assisted coding fun?"

You can't win the game. Nobody can. The aliens speed up, the bombs keep falling, and every city goes eventually. Every time.

But play it anyway. I had fun making it and sharing it, and that was always the point.

Newark • Trenton • Livingston • Atlantic City

Missile Command

Defend New Jersey from the alien bombardment. Hold Up / W to launch and thrust. Steer with Left / Right. Let go and gravity pulls you back down.

Newark • Trenton • Livingston • Atlantic City

You cannot win. That turns out to be the whole point.

Launch / Thrust: Up / W  •  Steer: Left/Right / A-D  •  Mobile: buttons below
View source code