Turning event-driven programming into child's play