Ages 9–14 · Grades 4–8 · Computer Science
EventForge
A real app sits still and reacts: read the handlers and the event timeline, then predict the log before you run it.
The events here are scripted (a stand-in for a real tap or shake), so every program runs the same way on any device. Runs on your device — nothing leaves it.
How are you feeling?
😄 Brain break
Where this idea comes from
Waiting for something to happen
In 2006 the Wii remote put a motion sensor in a games controller: swing it, and the game hears a “swing” event. In 2009 the iPhone learned shake to undo — shake the phone and the app hears a shake and offers to take back your typing. In 2014 the Amazon Echo waited, all day, for one wake word before it did anything at all.
One thing to hold: A phone in your hand: a glass to tap, and a sensor that feels it move.
Why it matters: Each one is a program that mostly does nothing. It sits and waits, and when an event arrives — a tap, a swing, a shake, a word — the matching handler runs. That is why a polite program waits: it doesn’t act until something happens, and it only acts on what it was told to listen for.
What we don’t know: A device that waits for a wake word has to hear everything to notice the one word. People argue about how much such a device should keep, and who should know it is listening. EventForge never uses the microphone or the camera, and nothing you do is sent anywhere.
Dates:
- 2006 The Wii remote: a swing is an event.
- 2009 Shake to undo on the iPhone.
- 2014 The Echo waits for its wake word.
Meet the cast — the characters who teach this
-
Tocker fires off again and again and rushes the order — you teach the timeline -
Tippy matches each event to its own handler -
Sill lets events through one at a time, in the order they happen -
Hasp keeps one running total for every handler
What next? Pick a door
- More like this TraceForge What will this program print? BugTales Which line is the bug on? TinkerForge Change one line: what changes?
- A bit harder DoodleForge What will this little loop draw? RailForge Will the cart reach the ore? ScreenForge What screen will this code make?
- Something different CreatureCare What is wrong with this animal? CountCraft Can you count it two ways? ShadeForge How sure are you, really?