MIT Scratch 3.0 Opens New Doors For Users And Builders Alike

We typically feature projects from people sharing what they’ve learned while building something for themselves. But our community has a healthy contingent who deploy their skills for the benefit of future generations, developing a child’s natural curiosity for play into interest in understanding the technical world they will grow up in. This field is where MIT’s release of Scratch 3.0 can open up interesting possibilities.

Scratch is a block-based programming language designed for elementary school children, letting them learn fundamental concepts while experimenting in an environment filled with visual and audible feedback. In an effort to make Scratch more widely available, version 2.0 in 2013 moved to the web. But it was built using interactive web technology of the time: Adobe Flash. As Flash has fallen out of favor and scheduled to be phased out in 2020, Scratch 3.0 used React to make the shift to HTML5.

The most immediate benefit is that Scratch can now be used on tablets, which all have modern browsers but very few of which have Flash. Another common educational hardware platform is the Raspberry Pi, which supported Scratch 2 via a convoluted software stack that was far from ideal. Now any hardware with a modern browser can run Scratch, no Flash binaries or custom wrappers are required. The Raspberry Pi foundation certainly seemed excited about this change.

But a more exciting and longer term benefit is Scratch extensions, a mechanism for Scratch programs to communicate with external hardware and online resources. This has evolved in parallel with Scratch 2.0 under the experimental ScratchX¬†umbrella and version 3.0 brings it into core. The launch featured a few official extensions (for connecting to micro:bit, LEGO Mindstroms EV3, etc.) with the promise that custom third-party extensions will soon be possible. This will significantly streamline building a Scratch interface for kid-friendly programmable hardware. Something we’ve seen done for a drone, for exploring SDR, and even for¬†a dollhouse. We’ll be keeping an eye out for the official release of Scratch 3.0 custom extension API, but anyone not afraid of working with fluid pre-release code are certainly welcome to dive in right now.

Bake a Fresh Raspberry Pi: Never Struggle To Configure A Pi Again

[David Ferguson] has put together a nice little tool called Pi Bakery. Half MIT Scratch, half configuration utility, it puts a nice visual face on all the various start-up scripts, and kludges that the Raspberry Pi community uses to configure the popular single board computer.

Raspberry Pi’s are a little weird. They mostly get crammed into the slots microcontrollers used to live in. The nice part about microcontrollers is that they just turn on and start going. There’s no OS to boot. No file system to mount. Of course the downside to microcontrollers is often that there’s no OS to boot and file system to mount. Regardless, mostly you’ve got to spend a bit configuring a Raspbian install before a Raspberry Pi really starts to encroach on the microcontroller’s territory.

Pi Bakery abstracts all this. You can drag blocks, representing scripts, in the order you’d like them run. If you want to your Pi to boot up, connect to WiFi, and then start a VNC server it’s as easy a dragging the blocks in the right order and filling in the blanks. You can see an example of it in operation in the video after the break.

Continue reading “Bake a Fresh Raspberry Pi: Never Struggle To Configure A Pi Again”