Super Scratch Programming Adventure! by The LEAD Project

March 2, 2017 by wendy

Super Scratch Programming Adventure Covers Version 2
Super Scratch Programming Adventure! by The LEAD Project

Super Scratch Programming Adventure! as the title implies combines programming with adventure. It not only teaches the reader how to program in Scratch, but also engages the reader with an action-packed storyline.

What is Scratch?

Scratch is a graphical programming language that is designed for young people and other beginning programmers. Using Scratch, you can design and create interactive animations, stories, games, art, and music by simply dragging and dropping coloured blocks. You can even upload your projects to the Internet to share with friends, family, and people from all over the world.

What is the Story?

Super Scratch Programming Adventure! Stage 1 Story
Super Scratch Programming Adventure! Stage 1 Story

A solar storm unleashes the Dark Wizard from the digital world. He and his Dark Minions attempt to take over the real world, but Scratchy, Mitch, and the Cosmic Defenders are determined to protect the universe from the Dark Wizard’s plans.

The story progresses through a series of stages, where each stage presents a challenge from the Dark Wizard. Scratchy, Mitch, and the Cosmic Defenders must solve each challenge using directions from a secret manual. The reader must follow the directions to help complete the programming missions, and protect the balance of the universe.

Cross-Curricular Learning

What I love most about this book is that it combines literacy with computing. I used this book with a class of 10 students between ages 8 and 10, and they were all captivated by the story. Because the story gave the programming projects purpose, my students were motivated to complete each mission, and they were excited to find out what would happen next.

The story also blends learning from other subject areas. In one stage, the Dark Wizard takes control of the Louvre museum and all of its art in Paris. To complete the programming challenge, my students created a quiz with questions about the Louvre and the Mona Lisa.

Step-By-Step Projects

Super Scratch Programming Adventure! Stage 1 Project
Super Scratch Programming Adventure! Stage 1 Project

Each programming mission demonstrates a different type of Scratch project and comes with easy-to-follow, step-by-step instructions. In this way, the projects cover a wide range of concepts. They also introduce a variety of features and tricks in Scratch.

Fun for All Ages

Super Scratch Programming Adventure! Stage 8 Project
Super Scratch Programming Adventure! Stage 8 Project

What I personally enjoyed when working through the programming projects with my students was the movie references. There are references to Indiana Jones, The Matrix, and Harry Potter. Although the book is designed for young learners and beginning programmers, I think everyone, from young to old, from beginner to expert, would have fun with this book.

Length of Projects

My only concern is that there is a big leap in terms of length from the first project to the second. The first project can be completed in one sitting. My students between the ages of 8 and 10 completed the project in under an hour. All of the following projects, however, are longer, and may require two or more sittings.

Scratch 1.4 vs. Scratch 2.0

Super Scratch Programming Adventure! Covers Version 1.4
Covers Version 1.4

Super Scratch Programming Adventure! Covers Version 2.0
Covers Version 2.0

There are two editions of the book. One is blue and covers Scratch 1.4, which is the older downloadable version of Scratch. The other is green and covers Scratch 2.0, which includes both the online and newer downloadable versions of Scratch. Even though the second edition is more up to date, I was able to use the first edition with my students, who completed the projects using Scratch 2.0 online.

Resources for Parents and Educators

You can download the projects for this book from No Starch Press, which includes complete working projects, blank projects, custom sprites, and a brief Getting Started with Scratch guide written by the Scratch team.

The reason why they provide both complete working projects and blank projects is to support different learning styles. The complete working projects allow young learners to explore and build on the projects while the blank projects allow students to add their own programming by following the instructions in the book. In both cases, students have the opportunity to improve the scripts, and customize and extend the projects.

The website also links to additional resources for educators:

  • Free Super Scratch Educator’s Guide
  • Official Scratch Educators Forum

About the Book

Super Scratch Programming Adventure! is written by the Learning through Engineering, Art, and Design (LEAD) Project, which was founded in 2005 by the Hong Kong Federation of Youth Groups in partnership with the creators of Scratch at the MIT Media Lab and the Chinese University of Hong Kong.

Book Details

  • Title: Super Scratch Programming Adventure!
  • Author: The LEAD Project
  • Publisher: No Starch Press
  • Publication date: 2013
  • ISBN hardcover: 978-1-250-06500-1
  • ISBN ebook: 978-1-59327-531-0
  • Buy online:

Hello Ruby: Adventures in Coding by Linda Liukas

January 1, 2017 by wendy

Hello Ruby: Adventures in Coding Title Page
Hello Ruby: Adventures in Coding by Linda Liukas

Hello Ruby is a colourful and playful children’s book that illustrates fundamental concepts behind computers, coding, and computational thinking. It centres on a young girl named Ruby, who loves asking questions and has a lively imagination. One day, Ruby’s father leaves her five gems for her to find. She sets off on an adventure to find these gems, deciphering clues, drawing maps, and making new friends. As children and parents follow along on Ruby’s adventure, they learn helpful strategies for problem solving that apply not only to coding but also to every day situations.

Introduction to Computational Thinking

Through Ruby’s adventure, children and parents are gradually introduced to computational thinking concepts. The book doesn’t cover any specific programming languages. It isn’t intended to teach children how to code. More importantly, it teaches children strategies that will help them solve problems. These strategies are not only useful for computer programmers but for everyone.

The big ideas and key concepts include understanding that big problems can be broken down into smaller ones, making plans and working with others can be helpful, and it’s important for instructions to be clear so that the end result is what everyone expects.

Unplugged Coding Activities

The best feature of this book is that each chapter comes with unplugged activities to give readers a chance to apply the concepts introduced in the chapter. The activities encourage children to use their imagination, and children and parents can experience the activities together. For example, after Chapter 2, children can design their own keyboards to learn how computers store information. After Chapter 5, children can further explore the concept of algorithms and loops by creating their own dance routines. And at the very end of the book, children can put it all together by making their own board games.

Resources for Parents

Each chapter in the book includes a Toolbox section that gives additional information for parents about the key concepts in the chapter. Parents can also find more activities on the website at Overall, Hello Ruby is a fantastic resource for children and grown-ups to explore and learn about computational thinking and coding together.

Book Details

  • Title: Hello Ruby: Adventures in Coding
  • Author: Linda Liukas
  • Publisher: Feiwel and Friends
  • Publication date: 2015
  • ISBN hardcover: 978-1-250-06500-1
  • ISBN ebook: 978-1-250-08088-2
  • Buy online:

Marshmallow Coding Returns

December 26, 2016 by wendy

Marshmallow Coding Returns

As the founder of Marshmallow Coding, I’m excited to announce that Marshmallow Coding will be returning in 2017 with a new mission.

What happened in 2016?

This past year, I had the honour of working with another non-profit organization called Kids Code Jeunesse. As their Western Regional Coordinator, I helped bring their coding programs and workshops to BC. I also had the amazing opportunity to work in partnership with the BC Ministry of Education and Lighthouse Labs to develop and deliver teacher training and student learning resources to support computational thinking and coding in BC’s new curriculum. Although this experience has been incredibly rewarding, I’m ready to return to Marshmallow Coding to renew our efforts in promoting accessible computer science education for all children.

Marshmallow Coding’s New Mission

Our new mission is to become the go-to website for teachers and parents who want to find the best coding resources for their students and children. We’ll start by gathering and reviewing the top children’s computer programming books. Eventually, we hope to curate other types of resources as well, including games, apps, and electronics and robotics kits.

Thank you, Renee and Brad

I’d like to take a moment to thank Renee, a middle school teacher in Colorado, and her student, Brad, for sharing a coding resource with us a few weeks ago. They had been doing some research on Brad’s new interest in computer programming, and they found not only our website, but also the IT Hare website, which contained a very helpful Beginner’s Guide to Programming Languages. We encourage anyone who’s interested in getting an overview of various programming languages to check it out.

Thank you to our supporters

Lastly, I’d like to thank everyone who has continued to support us over the past year, especially our social media followers. We’re excited to be back in the community, and we look forward to engaging with everyone in conversations on education and technology!

Coding Curriculums: Part 5

February 5, 2016 by wendy

Network of fibre optic cables around the world
Submarine Cables by Rarelibra is licensed under CC by-sa 3.0

In Part 4 of our Coding Curriculums series, we focused on computer science concepts that students in key stage 3 should learn based on the National Curriculum in England and the unplugged activities suggested in their guide for secondary teachers. Unplugged activities are important for students to understand concepts, but plugged activities are equally important for students to apply these concepts and learn through experience. Today, we summarize the skills and knowledge that children from ages 11 to 14 should learn through plugged activities.

Coding in multiple languages

By programming in multiple languages, students learn how to apply concepts from one language to another. If they were previously using a visual or block-based language, such as Scratch, they should attempt to apply the same concepts to a textual language, such as Python. At the same time, they can experiment with more complex ideas:

  • Data structures, such as a list, to store a collection of data
  • Functions or custom routines that can be reused
  • Boolean operators, such as AND, OR, and NOT, to combine conditions

Understanding computer systems

To learn about how computers work, students should explore one or more of the following questions perhaps through an inquiry-based project:

  • What are the main parts of a computer system?
  • How are instructions stored and executed on the computer?
  • How is information stored on the computer?
  • How does information travel across multiple computers?
  • What’s the difference between the Internet and the World Wide Web?

Experimenting with sound

Sound is converted from analog waves into digital files so that it can be stored, manipulated, and played on computers. Students should play with changing the sampling rate to observe the differences in sound quality and file size.

Creating projects using multiple technologies

By this point, students have experience with multiple programming languages, tools, and technologies. This is a great time for them to design their own creative projects. They should be responsible for setting their own goals, evaluating processes, and reflecting on their results. They should use resources responsibly and safely, and respect copyright.

Practicing digital literacy

Students should continue practicing digital literacy, that is, using technology safely, responsibly, and securely. For example, they should know how to protect their online identity by using strong passwords and anti-virus software, how to be safe when visiting websites and opening emails, and what to do when they come across inappropriate content.

Coding Curriculums: Part 4

December 29, 2015 by wendy

Computer Strands
Computing strands in A Guide for Secondary Teachers.

We’ve seen from the National Curriculum in England and their guide for primary teachers that computing consists of three main strands:

  1. Computer Science – How computers can be programmed to solve problems
  2. Information Technology – How computers work and how to use them
  3. Digital Literacy – How to use technology critically, responsibly, and safely

The guide for secondary teachers suggests that in key stage 3, children from ages 11 to 14 should shift their focus towards computer science, but that doesn’t necessarily mean more coding. Computer science is primarily about computational thinking:

  • Breaking down problems into smaller pieces
  • Recognizing and generalizing patterns
  • Abstracting details
  • Designing algorithms

Strategies for computational thinking can be demonstrated through unplugged activities without computers.

Model real-world problems

Truly understanding a problem means that you can model it in different ways. Ask your students to create representations of real-world, physical systems. For example, they could model the solar system, draw a map, or create storyboards that describe a process. Afterwards, ask them to consider how closely their models match real life and how their models can be used to make predictions.

Design algorithms

An algorithm is a precise list of instructions that solve a problem. You can design an algorithm in many ways, such as writing the steps down in English or drawing a flowchart. Have your students design algorithms to solve a specific problem and have them compare their solutions in terms of complexity and efficiency. They should see that multiple algorithms may solve the same problem, and that there are trade-offs with each solution, that is, there is no one right answer.

Study searching and sorting algorithms

Bubble Sort Visualization
Bubble Sort Visualization from VisuAlgo

Searching and sorting algorithms are well understood in computer science and reflect key aspects of computational thinking, such as pattern generalization and abstraction. Have your students execute linear search and binary search algorithms. For example, they could search for a specific card in a deck of cards or for a letter in a set of alphabet tiles, and then record each step using pencil and paper. To study sorting algorithms, ask your students to try different sorting algorithms on the same set of objects. In both cases, ask your students to compare the algorithms they tried in terms of complexity and efficiency.

Binary arithmetic

Binary arithmetic is another way to illustrate algorithms. Have your students convert binary numbers to decimal numbers and vice versa. Through this exercise, students learn that numbers can be represented in different ways as well as terminology, such as bit, byte, and nibble. You can also demonstrate how computers use numbers to store information. For example, a number can describe the colour of a pixel in an image. Have your students create bitmap images using squares to represent pixels and numbers to represent colours like colouring by numbers.

Computational thinking with computers

Even though many concepts in key stage 3 can be taught through unplugged activities, students should still have hands-on experience with programming and various technologies. In our next post, we’ll discuss what students in key stage 3 should learn when they have access to a computer.