Redux was still finding its feet in Australian dev teams in 2017, so Zack Design published tic-tac-toe-redux-dojo — a small, commit-driven workshop that teaches reducer-first state management by building the simplest game anyone can picture in their head.
Why tic-tac-toe
Any state-management story needs a problem small enough to fit on a whiteboard but rich enough to justify the ceremony. Tic-tac-toe is exactly that: nine cells, two players, a clear win condition, and — critically — an undo/redo story that only really sings once Redux is in place.
How the dojo runs
Each step of the workshop is a commit. Participants clone the repo, git reset --hard to step zero, and walk forward at their own pace:
- Start with a dumb React component and hard-coded state.
- Introduce actions and a reducer. Watch the component shrink.
- Wire in the store and
connect(). Feel the boilerplate, talk about why. - Install the Redux DevTools extension and replay the whole game backwards — the moment it clicks for most people.
Guide notes, hints, and the full progression live in the commit history, so facilitators can run it sync or async.
What makes it stick
Teaching Redux cold with a TodoMVC clone tends to produce blank faces. Starting with a game — with an obvious “did I win?” predicate, an obvious history, and an obvious time-machine — turns the abstract ideas (pure reducers, immutable updates, action logs) into things you can literally watch happen.
The dojo has been re-used inside Zack Design’s own team and by a few friendly shops running internal learning sessions. If you are planning a Redux onboarding day, fork it — pull requests welcome.