Computer Science Concepts in Scratch

Michal Armoni and Moti Ben-Ari

Copyright 2013 by Michal Armoni, Moti Ben-Ari, Weizmann Institute of Science.

This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License. To view a copy of this license, visit or send a letter to Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.

This book will familiarize you with the Scratch visual programming environment, focusing on using Scratch to learn computer science. The book is structured as a collection of tasks. Each chapter teaches a new concept, but the concept is introduced in order to solve a specific task such as animating dancing images or building a game. Each chapter starts with a simple task, but as soon as we solve one task, we add additional tasks to extend the existing task. The sequence of tasks will require a new construct of Scratch or the use of constructs you know in new ways.

The textbook was written for Scratch 1.4. We have also written a supplement that explains the changes and additional features in Scratch 2.0.


The textbook is available in three formats:

  1. with equal margins for screen display and one-sided printing;
  2. with margins for two-sided printing and binding in the left margin;
  3. with a large font on a small text area that enables better accessibility by magnifying the pdf.

The layout was carefully done for the full-size pages and will be suboptimal in the small format; we have no plans at this time to improve this format or to produce other formats for ereaders.

  • Textbook for Scratch 1.4—version 1.0, 5 May 2013:

Our other learning materials for Scratch

Moti has created many Scratch projects that can be used as learning materials:

  • Implementations of the activities of Computer Science Unplugged.
  • Projects on robotics: implementations of Karel the Robot and Braintenberg's vehicles, projects for the LEDO WeDO kit, and simulations of the Thymio education robot.
  • A game for learning mathematics.

You can find the Scratch projects on the MIT Scratch website or on his local Scratch page.

Research publications

  • O. Meerbaum-Salant, M. Armoni, M. Ben-Ari. Habits of programming in Scratch. Sixteenth Conference on Innovation and Technology in Computer Science Education, Darmstadt, Germany, 2011, 168–172.
  • O. Meerbaum-Salant, M. Armoni, M. Ben-Ari. Learning computer science concepts with Scratch. Computer Science Education, 23(3), 2013, 239–264.
  • M. Armoni, O. Meerbaum-Salant, M. Ben-Ari. From Scratch to "Real" Programming. ACM Transactions on Computing Education, 14(4), article 25, 2015.

The questionnaires used in the research can be downloaded from here.

Hebrew language website

Contact: Please send comments and suggestions to