04 January 2017
Scratch is a programming language widely used in schools and colleges to teach programming, and there are two versions in popular use. The older version, Scratch 1.4, is the one that is installed on the Raspberry Pi in the Raspbian operating system. It's been extended to enable you to code GPIO projects in Scratch, controlling sensors and LEDs, for example.
Scratch 2.0 is a newer version of Scratch, which is based on Flash. There is a version of Scratch 2.0 you can download, but most people probably use it on the website where there are community features such as sharing, commenting and liking projects built-in.
There are a few new features in Scratch 2.0, including the ability to create your own blocks (which helps with structured programming), and the ability to clone sprites (which can be used to great effect in games and graphic effects). There are a few differences to block names too, and the Variables section has been renamed to Data. The Control blocks have been split into Control and Events blocks too.
One thing that isn't widely known is that you can now run Scratch 2.0 on the Raspberry Pi, because the Chromium browser in the Pixel desktop supports Adobe Flash on the Raspberry Pi. I've tested this on the Raspberry Pi 2 and the Raspberry Pi 3, and found the editor and the project window both run a bit slower than on a PC, but you can nevertheless now get the extra Scratch 2.0 features on the Pi. There was a bug in Treetop Catnap too, where one of the enemies got stuck, which doesn't happen on the PC. I wonder if that's because the graphical rendering is slightly different and the sprite believes it's touching a colour that I haven't put there. I tried using Chromium on the Model B+, but it doesn't appear that Adobe Flash works there.
Because Scratch 2.0 runs a bit slower, and the GPIO is not supported in Scratch 2.0, I'd still recommend Scratch 1.4 on the Raspberry Pi. But if you have found some projects that only work in Scratch 2.0 or want to see what's different, give it a go! If you're familiar with Scratch 2.0 already, perhaps from school or college, having the option to use the same programming language at home will probably appeal.