Third party cookies may be stored when visiting this site. Please see the cookie information.

PenguinTutor YouTube Channel

Scratch programming tutorials and guides

Scratch is a graphical block based programming language. It's designed for children as it allows them to learn programming without needing to memorise the correct words or syntax. It is also useful for those wanting to get started with programming or wanting to try graphics programing.

These guides are mainly intended for older children and adults. They cover a number of different concepts and techniques which may be better split into smaller guides when teaching younger children.

The current version of Scratch is version 3 which works well through a web browser. If you would like to interact with electronics on a Raspberry Pi then there are more details on my Scratch on the Raspberry Pi page.

Scratch Version 3

Scratch version 3 released in 2019 can be run in a web browser or using the offline version. It is designed in HTML 5 and so no longer needs the flash plug-in.

Programming in Scratch version 3 on Linux

You can access Scratch through a web browser such as Firefox, Chrome or other recent browerse (Internet Explorer is no longer supported), or download the offline version to run directly on your local computer. See the Scratch website for more details.

Scratch Version 2

Scratch 2 has now been replaced by the improved Scratch 3. Scratch 2 was dependant upon Adobe Flash, or Adobe Air for the offline version, both of these have now been dropped.

The following presentations and tutorial guides are still available, but you may be better looking at Scratch 3.

Programming in Scratch on Ubuntu Linux

Training presentation - Scratch for primary school teachers (Scratch version 2)

Teaching guide - Practical programming using Scratch for primary school teachers

Quiz game for Scratch version 2

Scratch version 2 game

Space Asteroids

Also see my space asteroids game for an example of physical computing using Scratch 3.

Blog links and videos on programming

Previous Introduction to API
Introduction to API
Next Scratch for primary school teachers
Scratch for primary school teachers