Learn to Code with Scratch
2013, MIT Media Lab
Block/Text: Block-Based Coding
Scratch was created in 2003 out of a collaboration between the Playful Invention Company and the Lifelong Kindergarten group at MIT, led by Mitchel Resnick.
It was heavily inspired by the work of Seymour Papert, the creator of the Logo programming language and one of the pioneers of the constructionist theory of learning. Papert believed that children learn best when they are actively engaged in making things that allow for playful and creative expression. Even better if they are allowed to do it with a computer alongside their peers.
Scratch uses “event-driven programming” in which actions from the user - such as a mouse click, a key press, or a sensor reading - trigger events and other outcomes. This means all Scratch projects are highly interactive and easy to change. Students program active objects called “Sprites” by stacking blocks of code into lists of commands to create animations, games, and stories. A “Stage Area” simulator makes for great exploration of 2-D graphics and geometry, while a diverse library of graphics and sounds provide endless inspiration for dynamic and imaginative projects.
Scratch also offers students the option to learn and collaborate within the online Scratch community. Scratch publishes students’ projects using a familiar “Facebook-like” interface that allows students to comment, like, and borrow from each other - and reinforces good digital etiquette, such as leaving positive comments or giving credit to others.
Over the last 17 years, Scratch has gone through several iterations - the newest version being Scratch 3.0 and free to use either online or as a downloadable app. In the newest version, students can use Scratch blocks to bring LEGO motors to life, integrate microcontrollers like Makey Makey, or even create multiplayer games. In 2014, they released a special tablet-based version for kids aged 5-7 called ScratchJr, which limits the software appropriately to support early learners.
At Living Computers, we like to use Scratch with students in Grades 4 and up - or right around the time when kids start to learn more about x and y coordinates. At that age, it doesn’t take long for students to make the connection between math and coding.
Scratch runs in-browser, so parents don’t have to worry about having a compatible device or installing anything to get started. Scratch also offers downloadable offline versions that lets students create without an Internet connection. Find them here at: https://scratch.mit.edu/download
A Scratch Account allows kids to use, save, and share with Scratch on any computer or tablet that connects to the Internet. Accounts are free and only require an active email to verify. Once logged in, students’ Scratch projects are automatically saved and stored on Scratch’s servers where they can be accessed any time, anywhere (finished or not).
Check out this 10 minute video here that outlines Scratch set-up and a short program.
One of Scratch’s best features is the “See Inside” button that lets students peek behind any publicly shared Scratch project to see the underlying code. Talk about a great way to learn new tricks! So if students want to add a feature you’re not sure how to do, encourage them to find an example project that can - and keep learning at their own pace.