Scratch - Imagine, Program, Share
Scratch is the most popular tool for computer programming in schools around the world, and is used independently by millions of children for their own projects. Its block-based, drag-and-drop system supports accessible, creative learning for children of all abilities and levels of experience. Children can easily make presentations, games, simulations, puzzles - the possibilities are boundless.
Teachers can use Scratch to teach students just about any coding
concept or element of computational thinking. Then, after students are
proficient in using it, Scratch can become another tool for demonstrating
learning in just about any content area. Through animation, audio, image, and text,
students can tell stories, explain concepts, and create art. The Scratch
platform can be another option for any project-based assessment or activity --
an alternative to writing, presentations, etc. For coding teachers, Scratch is
a great springboard to traditional text-based coding languages like Ruby or
Swift.
Scratch has a huge associated community of users and educators (from around the world, since Scratch supports multiple languages). Because of this community, everyone from the complete novice to the seasoned expert can find tutorials, answers to questions, projects to remix, and, most important, inspiration to continue building their coding skills and finding new challenges.
https://scratch.mit.edu/