MicroBlocks, the world’s first live and autonomous blocks programming system for physical computing, is available today for teachers, students, and creative makers everywhere. This fun, free, Scratch-like computing platform has been designed with and for teachers and learners as young as 10 years old. Physical computing integrates coding with light, sound, sensing, and motion in the physical world. It is often used in the context of open-ended art, science, and engineering projects that can engage a wide range of learners, including those who do not initially see themselves as technologists.
“Without even knowing it, kids innately advance their scientific thinking and comfort with computer programming,” said Kathy Giori, director of Global Partnerships and Outreach for the project. “Direct experience and hands-on development helps us learn. When we travel, we understand more about geography and cultures. When we cook, we learn more about food chemistry. And, when kids use MicroBlocks, they learn computational thinking and problem solving. As the world continues to head toward connectivity and mobility, this kind of learning needs to start early and happen throughout the entire educational system, and even at home.”
MicroBlocks is not brand new. It has been through over two years of careful testing and refinement and already has been used by dozens of educators and thousands of children in schools and maker spaces around the world. Jen Lavalle, a K5 public school teacher who has been using MicroBlocks for several years, stresses the importance of student engagement. “My elementary school students love making animations and games using Microblocks,” Ms. Lavalle reports. “It was easy for them to make something they were proud of. They were hooked by only a few blocks — super powerful and fun!”
MicroBlocks is the first blocks-based programming environment for physical computing that combines liveness with autonomy. Liveness lets the user see their code run immediately without waiting for it to compile and download. Liveness helps beginners feel successful immediately and keeps them engaged as they grow in expertise. Autonomy allows the user to untether their creation from the programming environment and have it continue to run independently. Autonomy allows a MicroBlocks creation to be carried in a pocket, built into a Halloween costume, worn as jewelry, or launched in a model rocket.
This unique approach is enabled by a sophisticated underlying architecture. “As students work, their code is incrementally downloaded to the microcontroller, ready to run,” said John Maloney, MicroBlocks founder and lead developer. “Our design allows them to see their code in action instantly as they test and improve their designs. They can create colorful LED patterns, display or scroll messages, play music, make a game, bring a robot to life, or gather information from connected sensors. When they are happy with how their creation works, they just unplug the microcontroller, attach a battery, and run it anywhere.”
Another first, the MicroBlocks PlugShare feature allows users to share creations by physically exchanging microcontroller boards. When a MicroBlocks board is plugged in, PlugShare loads the code on the board into the MicroBlocks scripting area, as if the board were a memory stick. “This magically cool feature gives makers the ability to easily share and improve on each others’ designs by swapping boards,” said Bernat Romagosa, MicroBlocks co-developer. “For example, a user might create a fitness app for a micro:bit and give it to a friend to try. After trying the app, the friend could use PlugShare to read the code from the micro:bit and understand how it works. They might even improve the fitness app and return the micro:bit to its owner — with their improvements built in.”
MicroBlocks runs on affordable educational microcontroller boards including the BBC micro:bit, Calliope mini, Adafruit Circuit Playground Express / Bluefruit and Clue, Citilab’s ED1, M5’s Stack, Stick, and Atom, 32-bit Arduinos, ESP32 boards, the NodeMCU, and more. Although these boards have widely varying features, MicroBlocks adapts itself to the available hardware. For example, when a game designed for the micro:bit is run on a Citilab ED1 board, the micro:bit’s 5×5 LED display is simulated on the TFT display of the Citilab ED1 board.
The MicroBlocks Team
MicroBlocks was developed by a trio of programmers with a long history of creating successful blocks-based programming environments. John Maloney, co-creator of Scratch, Jens Mönig, creator of Snap!, and Bernat Romagosa, creator of Snap4Arduino and BeetleBlocks, are all passionate about improving educational tools, and helping kids learn by creating physical things. Kathy Giori, formerly of Arduino and Mozilla, works closely with teachers and makers, and collaborates with hardware ecosystem partners to help build and grow the community. The project leadership committee also includes Amon Millner, Associate Professor of Computing and Innovation at Olin College (and former member of the Scratch team), and Tom Lauwers, founder of BirdBrain technologies. Student activity cards were designed by Jen Lavalle, K-5 Instructional Technology Specialist, Cambridge Public Schools. Additional educational materials, workshops, and activities were developed and tested by Jadga Huegle, openSAP educator; José García, Victor Casado, and Nina Coll, CitiLab Cornellà; and Katie Henry, Micro:bit Educational Foundation.
MicroBlocks aims to create a global community for passionate ‘maker’ educators by offering a free and open source platform that helps students and curious makers discover the joys of physical computing. MicroBlocks is a member project of Software Freedom Conservancy, a 501(c)(3) non-profit.