Scratch is a creative computing environment where you can do visual programming.  It is created and released by the Life-Long Kindergarten Group at MIT Media Lab.  To try it online without installing any software on your system and remix any of the 4+ million projects created by other people, see the official website.  Flash enabled web browser is required.  Hence you cannot try it on devices that do not support flash (e.g. iPad and other Apple devices).

You may choose to
download the free software for offline use. You can download either  'Version 2.0 Beta' (and current updates for fixes) or the stable 'Version 1.4' (released in 2009).

Quoting the creators of Scratch

Scratch is an authoring environment that makes it easy for people to create their own interactive stories, games, animations, and simulations – and share their work with other creators in an online community. Projects are created by snapping together blocks, as one would snap together LEGO bricks or puzzle pieces. Projects can then be shared with an active online community consisting of hundreds of thousands of registered members. Community members regularly comment on projects to ask questions and give feedback, create galleries of related projects, download projects to study their construction, and remix downloaded projects to be re-shared online.

To put together a program to make a character / sprite draw a circle on the screen, you may snap together some of Scratch blocks as shown below:

The help screens and starter activities provided in the installatio are good enough to get you started. A reference guide is also installed along with the software.  Access these resources via the help menu, after the software is installed. In case you want to take a look at them on systems without installing Scratch, some of these are available (old and new) along with video tutorials.

If you want structured lessons, they are available at  About 64 flash video tutorials are posted on this site to introduce all the blocks in Scratch along with some ideas on how you can try a variety of activities in Scratch.  Please note that an old version of Scratch (older than 1.4) is used to make these video lessons.  Even though the interface presented in these videos is out of date, the activities are not and the content is still relevant for current versions of Scratch.

If you are a teacher, you may check out excellent resources available at ScratchED.  All
types of interesting programs are shared online on Scratch website.  Browse through featured projects and studios or search using keywords. 

We share few projects that demonstrate certain programming aspects that may not be highlighted elsewhere (using Scratch; the ideas themselves are not new and these programs are implemented in a lot of traditional computer programming languages by many students).  Here are some:

  • A typical beginner program written in traditional programming languages like C - ask the user for radius of a circle and calculate its area and circumference. If you are able to follow how to do this simple program you could build similar programs using any formulas from your Maths and Science textbooks.

  • Draw concentric circles - using trial and error approach or using trigonometric functions for accuracy.  What would you like the computer to draw?  Try different combinations of moving the sprite/character that has the 'pen down' and see what patterns show up on screen.

  • String Manipulation - Greet the user and reverse the string entered by the user.  Can you check if the user entered a palindrome? You could tackle tougher problems using N-grams eventually.

  • Multi-century calendar generation - identify week day of any calendar day chosen by the user from Jan 1st 1900 through Dec 31st 2099.  Do not read this code to follow the logic.  Instead, try to come up with your own heuristics by observing few calendars. Answer these questions based on observations and try to generalize.  For a non-leap year, if Jan 1st is Monday, what day is Dec 31st? If you answered this by looking at a calendar, could you generalize that observation and prove it mathematically? (Hint: You need to know what is 'mod'.)  Follow-up questions - (A) What calendar year before 2000 had identical calendar and which year will be identical to both in future?  Can you extend this series backward and forward?  (B) Find an identical calendar year to 2014 in both directions. Can you generalize these findings?  You may want to repeat this exercize for at least 3 consecutive non-leap years before you generalize.  (C) What months in a given year have identical calendar? Are they same for both leap and non-leap years?

Here is a studio that has some of the projects created by 8th and 9th class / grade students after they were introduced to Scratch in about 40 sessions of 40 minutes each.


This school will host a seminar on 'Future is Computing' and demonstrations of all the different Scratch Projects done by 8th and 9th class students.

Teachers and parents, if you missed the above seminar and the free Scratch Day event at our office in Satrampadu, Eluru, you may request for a demo at your school or in our office.

Scratch Day 2013 at in ELURU, AP

Before Scratch

Teaching Computer Programming to Children

It goes against the grain of modern education to teach children to program. What fun is there in making plans, acquiring discipline in organizing thoughts, devoting attention to detail and learning to be self-critical?