Scratch

Scratch can be many things: a gaming system, a puzzle, an animation studio… all while instilling in the youth the foundations of software development.