Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Scratch 2.0 Beginner's Guide: Second Edition
Scratch 2.0 Beginner's Guide: Second Edition

Scratch 2.0 Beginner's Guide: Second Edition: Create digital stories, games, art, and animations through six unique projects.

eBook
NZ$14.99 NZ$64.99
Paperback
NZ$80.99
Subscription
Free Trial

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing
Table of content icon View table of contents Preview book icon Preview Book

Scratch 2.0 Beginner's Guide: Second Edition

Chapter 1. Welcome to Scratch 2.0

I assume you're reading this book because you want to learn how to create interactive stories, animations, and games using Scratch, or you want to learn Scratch so that you can teach someone else how to program. It matters not whether your classroom is in a middle school, a home school environment, an after-school workshop, or a weekend coding project with your son or daughter. We are all teachers. That's the perspective of this book. You'll learn how to create projects using Scratch so that you can teach someone else, but no programming knowledge is expected.

In this chapter, we will:

  • Review what Scratch is and how we can use it
  • Learn more about the types of projects we will create in this book
  • Explore an example project from the Scratch website and review the project editor

Whether you're 8 or 80, the Scratch programming language provides a beginner-friendly computer programming environment that enables you to create digital projects. Success with Scratch comes quickly. You won't find any quirky syntax to learn, and you won't make any typing mistakes that prevent your program from running.

Creating a project in Scratch is as easy as snapping the color-coded blocks together. This environment allows us to see the positive results quickly. In addition to this, Scratch helps turn passive users into creators.

You'll find comfort in Scratch's building-block approach to create animations, games, and stories. After using Scratch, programming will make sense. It will seem easy. It will bring a smile to your face, and you'll be able to cope with technical concepts in the future.

About Scratch

Mitch Resnick and the Lifelong Kindergarten Group at the Massachusetts Institute of Technology (MIT) in the Media Laboratory developed Scratch as a teaching language primarily for 8 – 16 year olds, but there's nothing stopping the rest of us from enjoying the Scratch experience and sharpening our creative minds.

Encouraging everyone to think programmatically

The natural reaction of people is to see Scratch as a means of teaching computer science and integrating it into classrooms of all levels. There are teachers who use Scratch across a variety of subjects as seen on the ScratchEd site. The ScratchEd site caters to the educational community and aggregates a lot of Scratch resources, including lesson plans and tips. However, the approach and thoroughness of the included material varies greatly. You can check out ScratchEd at http://scratched.media.mit.edu/.

While writing this book, I did not set out to write a computer science textbook. It's quite simply a tutorial for people who want to learn how to use Scratch to create stories, animations, games, or art. It primarily addresses the parents, home school families, and teachers who may not be programmers themselves but want a fun way to help their children become more digitally literate. Everyone, however, can use this tutorial to learn Scratch, and many young students have worked through the Version 1.4 of Scratch of this book. I expect young scratchers will be more than capable of working through the projects in this edition.

My underlying belief is that knowing how to program can benefit everyone, but not everyone needs to be a programmer. The mental work required to create a program inherently develops an understanding of how computers work, sharpens our critical thinking skills, and gives us lots of practice at solving problems.

There's also an increasingly popular idea that sometimes we want to create applications for personal use. Of course, system administrators have always created custom scripts to help automate repetitive tasks. However, modern applications such as Scratch or the MIT App Inventor (originally developed by Google) make it incredibly easy to create programs for personal use or with the intention of sharing it with a small group of friends, which counters the perspective that learning to program is synonymous with wanting to be a professional programmer or an application developer.

When you have a little bit of programming knowledge, you'll approach non-programming problems in a different way. For example, I've used programming as a marketer to manage search engine optimization and keyword research on business websites. I've also used my programming knowledge to write automated software tests.

Bottom line, programming becomes a tool in your problem-solving toolbox. This is the key to understanding how I approach this Scratch tutorial. I want the computer scientists to come along for the ride, but I'm catering to a broader audience.

Sample Scratch uses

I couldn't begin to suggest every possible way for you to use Scratch; that's why we have an imagination. However, here are a few ideas to get you started:

  • Use Scratch to teach yourself or your students how to program. That's the obvious one.
  • Use Scratch to demonstrate Math concepts. Scratch can also demonstrate the x and y coordinate system in an interactive way.
  • Use Scratch to inspire your kids to read and write. Find a story and animate each scene or encourage them to animate the story. Turn their haiku into a Scratch project.
  • Have a child who only wants to play video games? Make a deal. Your child can only play the games he creates or remixes with Scratch.

As you work through the examples in this book, write down your project ideas no matter how hard, easy, obvious, or silly they seem. The next one might be your best idea yet.

Computational thinking

Learning: we do it for life. We should help our children develop skills that will help them keep learning and solving problems in an increasingly digital environment. Using Scratch, we will learn how to design, think, collaborate, communicate, analyze, and program in a computer language.

You may frame the Scratch approach as computational thinking. According to Wikipedia:

Computational thinking is a problem solving method that uses computer science techniques. The term computational thinking was first used by Seymour Papert in 1996.

By the time we make our cat dance for the first time, we'll forget all about the academic research and theories behind Scratch. Instead, we'll focus on having fun and creating the next project.

Finding a project for you

This book will give you a well-rounded introduction to Scratch. It's true that creating games are incredibly popular, and young boys tend to want to create games. However, there are other uses of Scratch, and plenty of people who want to do something other than just create games. Generally speaking, we'll make an animation, tell a story, build a game, create art, and sense the real world.

Making animations

An animation lets the sprites interact with each other. We'll use the common example of a birthday card to demonstrate animations. The following screenshot shows a birthday card example from Chapter 3, Creaing an Animated Birthday Card:

Making animations

However, some folks have created more complicated projects using stop-motion animations. You can find some stop-motion animations on the Scratch website at http://scratch.mit.edu/studios/254628/.

Telling stories

The first story project we do will create a slideshow that's designed to be narrated with Scratch's built-in audio capabilities. The following screenshot is a preview of our slideshow:

Telling stories

Our second story project takes a more classical approach to tell a story by creating a book with a table of contents and then animating the individual scenes as a way of narrating the story.

Telling stories

Building games

Games are by the far the most popular Scratch project, and people tend to create all the normal types of games: platformer games, scrolling backgrounds, role-playing games, mazes, and classic arcade games. We'll remix the classic Pong game into a challenging game of Breakout, and in the process, we'll set the stage for many common game-programming concepts. The following screenshot shows the Breakout game:

Building games

Programming games of chance

We will encounter randomness throughout the book, but we'll develop a project that applies random outcomes to an interactive story. The following screenshot shows a Trip to the fortune teller:

Programming games of chance

Creating art projects

The Scratch site is loaded with talented illustrators, and Scratch provides all the tools needed to draw characters and scenes, namely a paint editor and an easy way to animate them. The other kind of art you'll find on the Scratch site is computer-generated art, and we'll spend time drawing geometric shapes, as seen in the following screenshot:

Creating art projects

Sensing the real world

Scratch has historically included support for add-on hardware, such as PicoBoard and LEGO WeDo. Scratch also includes built-in support to use the computer's webcam and senses external sounds using the computer's microphone. We'll explore the webcam, microphone, and PicoBoard in our project.

Programming concepts

The following table summarizes several programming concepts that can be learned with Scratch. It's included here primarily to reinforce Scratch as a programming language and foreshadow the concepts we'll use throughout the book. We'll introduce concepts in greater detail as we work through the book.

Concept

Description

Interface design

When we design a program, we turn our imagination into a creation that can be shared with others. We create the flow of the program, how the user interacts with the project, and the actions each sprite takes to tell our story.

Loops (iteration)

A loop repeats (iterates) through a list of programming commands (also known as blocks in Scratch). Often, we'll use conditional statements to control when and how often a loop runs.

Boolean logic

A Boolean command evaluates a given statement as true or false. In Scratch, a Boolean command can check whether a specified condition is true (for example, is the color blue?), or we can compare values with and, or, and not operators. For example, if 4 > 0 and 4 < 2.

Variables

Variables store text or numbers for reuse in the program. For example, if x > 0 creates a conditional statement that evaluates whether the number assigned to x is greater than 0.

Arrays (Lists)

Arrays are similar to variables in that they store information that may or may not change. However, a list stores multiple values in the same way a grocery list stores a group of items.

Events

Scratch provides an entire group of event blocks that allows us to tell our program what to do when that event happens. For example, events include when flag is clicked or when a space key is pressed.

Synchronization and coordination

Programming a sprite to receive a broadcast message from another sprite coordinates a cause and effect. Broadcasting a message and waiting for all the other sprites to act on the broadcast synchronizes the action. Throughout the book, broadcasts are a technique we will use often, and they provide the fundamental communication between the sprites in the project.

Concurrency

Creating two scripts to run on the same control enables parallel execution. For example, programming four different sprites to pixelate when the green flag is clicked creates four concurrent actions.

Random numbers

This concept picks a random number from a specified range.

Cloud data

Scratch 2.0 introduces cloud variables that enable projects to store data on the Scratch web servers so that the data is available to other Scratch users. For example, the use of cloud data might include keeping a high score or tracking the survey results.

Procedures

Procedures can also be called as functions or methods in other programming languages. Scratch 2.0 adds the ability to create custom blocks that allows you to create a stack of blocks under a single name. When you use a custom block, you can pass an argument, such as a sprite number, into the procedure.

Vector and Bitmap graphics

Scratch includes a built-in image editor that enables you to create graphics and sprites for your projects. Vector graphics is a new feature of Scratch 2.0.

Cloning

New to Scratch 2.0, cloning allows a sprite to duplicate itself while the program is running. Clones inherit the parent sprite's costumes and scripts. For example, many people create games that need to shoot something, such as asteroids. Cloning in Scratch 2.0 allows us to shoot multiple times.

Video

By using the computer's built-in webcam, Scratch 2.0 can enable the project to sense the video(s).

Using Scratch 2.0

With the release of Scratch 2.0, project creation has primarily moved online. For users who do not have access to the Internet, the Scratch team has launched a complementary offline editor. I'll introduce you to both the environments.

To get started, in your Flash-enabled web browser, go to http://scratch.mit.edu.

Note

For more information about installing Adobe Flash, go to http://get.adobe.com/flashplayer/ in your web browser.

You'll get a page that resembles the following screenshot:

Using Scratch 2.0

The top of the page contains the Create, Explore, and Discuss links. As we work through our projects, we'll spend our time creating projects, and I'll leave the forum discussions for later. For now, let's just look at a project.

At the time I wrote this chapter, the Following Orange project was displayed as a featured project. It's available at http://scratch.mit.edu/projects/14852464/. If for some reason this project is not available in the future, just click on any project on the Scratch home page and play it. Just experience a Scratch project as a user.

The following screenshot shows the Following Orange project:

Using Scratch 2.0

When you share your projects with the Scratch community, this is the primary view. It's a relatively intuitive design. The users provide some instructions and credits about the project as seen in the right-half of the previous screenshot. The project displays a green flag in a circle, and clicking on the green flag starts (initializes) the project.

Above the stage, we see the project name with the name of the author (I have no idea who this user is as I just selected it out of convenience). To the right of the project name is a blue See inside button. When you click on See inside, you'll see the project editor.

Looking inside a Scratch project

Clicking on the See inside button for a project will display the details of the project in the project editor, as seen in the following screenshot. If you click on the Create button from the Scratch website, you will open a new project in the same view.

Looking inside a Scratch project

The display gets a little more complicated because there are more things available on the screen, but it's important to note that everything we need to create, test, and run our projects is accessible from the single view of the project editor.

To borrow a phrase from the Scratch Wiki, the project editor is divided into palettes and panes. At this point, I'll draw your attention to three key areas: the stage, the sprites pane, and the script area. Using the Following Orange project as a guide, we'll discuss each one of the three key areas in the following sections.

The stage area

The large space beneath the green flag and the stop sign icons is the stage. This is where our sprites act out their scripts. It's here that we get to see the result of our programming.

The stage area

The sprites pane

Sprites are the characters and objects in our Scratch projects. The list of sprites can be found below the stage. The following screenshot shows the list of sprites available to the Following Orange project:

The sprites pane

The scripts area

In order to get our sprites to animate, move, or interact with one another on the stage, we need to create one or more scripts for each sprite. If you click on a sprite from the list, the project editor will show the existing stacks of blocks in the scripts area.

Tip

A stack of blocks is a script, and a sprite can have multiple scripts assigned to it. In this book, I'll use either script or stack to refer to a collection of blocks.

The following screenshot shows a script for one of the sprites in the Following Orange project:

The scripts area

To create a game, story, or animation in Scratch, we stack blocks together to form a script that gives instructions to the project sprites. In the middle of the project editor screen, we have categories of blocks that are grouped by the kinds of tasks they represent. They are Motion, Looks, Sound, Pen, Data, Events, Control, Sensing, Operators, and More Blocks. Throughout the book, I'll refer to these categories of blocks as palettes; they can be seen in the previous screenshot.

The palettes of blocks are analogous to the palette of colors an artist mixes while creating a painting. We mix the blocks together to form our art work. Each type of block is color coded so that we can easily identify them by their type in our scripts.

The commands written on the blocks are in plain English, and they don't require a lot of effort to understand the basic idea behind any block. Take the script visible in the previous screenshot as an example. You might not know exactly what these two scripts do, but by reading the blocks, you will generally understand that these blocks are initializing the game and changing to the next level.

The built-in image editor

One of the core features of Scratch is its built-in image editor, which allows us to draw our own backgrounds and sprites. This makes it incredibly easy for users to create sprites and project backgrounds, and it's readily available from the project editor.

Previous versions of Scratch used a bitmap image editor, but as of Version 2.0, Scratch can also draw in vector graphics, which allows us to create images that are smooth and scalable to any size.

The following screenshot shows the default Scratch cat in the paint editor. If you've used any image editor in the past, including GIMP or Photoshop, then the drawing tools should have a familiar feel to them.

The built-in image editor

Scratch's built-in paint editor is relatively basic in terms of the number of features, but is functional for most of our uses. In general, the paint editor will allow you to perform the following tasks:

  • Create shapes and text
  • Import and edit images in popular formats
  • Apply color
  • Resize and change the orientation of the image

The image editor is available from multiple points within the Scratch interface, as we'll see throughout the book. We'll cover the paint editor in greater detail in Chapter 3, Creating an Animated Birthday Card.

Using Scratch 2.0 offline

It's not possible to be connected to the Internet all the time, which may be an increasingly difficult idea to accept for some people. Nevertheless, consider that your Internet connection may go down, that the Scratch website may be offline for updates, or perhaps your Internet connection is slow.

If you can't get to the Scratch website, then you can't create a project using the online project editor. Thankfully, the Scratch team has released an offline editor. You can download it from http://scratch.mit.edu/scratch2download/.

The download page includes an online installer that will install the prerequisite software, namely Adobe Air, on your computer. The following screenshot shows the Scratch 2 Offline Editor:

Using Scratch 2.0 offline

As we see, the offline editor looks like the online editor. Using the offline editor, you can create projects and then share them to the Scratch website. We'll review sharing projects in Chapter 2, A Quick Start Guide to Scratch. The offline version of Scratch 2.0 has been in development for several months following the official release of Scratch 2.0.

The previous screenshot indicates that the editor shown is beta. Be sure to double-check the download page for information pertaining to the functionality and release stability of the offline editor. I would highly recommend downloading the offline version as a backup to the online version. While the Scratch team does make a great effort to protect user privacy, creating and saving projects offline does not require an account on the Scratch website, ensuring user privacy.

Encountering Scratch 1.4

One of the biggest limiting factors of Scratch 2.0 is its reliance on Flash and Adobe Air (for the offline version). Not all computer systems are capable of running Flash environments; some Linux users and users of the low-cost, credit card-sized Raspberry Pi come to mind. The Pi is a Linux-based computer that's capable of plugging into an existing television set and keyboard. The Pi and Linux versions in general run Scratch 1.4. My XO laptop also runs Scratch 1.4.

All of these Flash challenges increase the likelihood of encountering Scratch 1.4. I do not insist on the use of Scratch 1.4 until we come across the PicoBoard projects in Appendix A, Connecting a PicoBoard to Scratch 1.4; however, if you're a Scratch 1.4 user, most of these projects can be adapted with little effort. I've taken the effort to specifically identify features that are exclusive to Scratch 2.0 so that users of the older versions can adapt appropriately.

Tinkering encouraged

The structure of the Scratch interface makes it easy for us to tinker and explore ideas. As we create projects, we evaluate our work and determine whether the results meet our expectations. It's very easy because everything happens in one interface.

To check whether our project works, we don't have to compile the code, switch windows, upload files to a server, or work around any number of other obstacles to run our project. Scratch enables us to modify the program as it runs and see the results in real time.

Summary

In this chapter, we reviewed Scratch both in terms of its possibilities and how it's used in the book to create stories, animations, games, and art. Whether you're a mom, a dad, a workshop facilitator, or a young scratcher, this chapter lays the foundation for the work we'll do in the rest of the book. We've even explored a project and the project editor.

In the next chapter, we'll create an online Scratch account, explore the community, and then move right into our first Scratch project. It'll give us an easy way to tinker with the Scratch interface and take our first steps. We'll focus on some project management fundamentals including naming objects, sharing projects, and lots of things in between.

Left arrow icon Right arrow icon

Description

The book uses step-by-step instructions along with full code listings for each exercise. After each exercise, the author pauses to reflect, explain, and offer insights before building on the project. The author approaches the content with the belief that we are all teachers and that you are reading this book not only because you want to learn, but because you want to share your knowledge with others. Motivated students can pick up this book and teach themselves how to program because the book takes a simple, strategic, and structured approach to learning Scratch. Parents can grasp the fundamentals so that they can guide their children through introductory Scratch programming exercises. It’s perfect for homeschool families. Teachers of all disciplines from computer science to English can quickly get up to speed with Scratch and adapt the projects for use in the classroom.

What you will learn

  • Program in Scratch including universal programming concepts such as loops, conditional statements, variables, arrays, Boolean logic, dynamic interaction, coordination, synchronization, threads, event handling, and procedures
  • Design user interfaces including sequence, characters, and controls
  • Translate a storyline or plot into an online game, animation, or story
  • Debug problems and revise projects to fix problems and add functionality
  • Think critically to solve problems based on need, program limitations, and knowledge levels

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Apr 15, 2014
Length: 296 pages
Edition : 1st
Language : English
ISBN-13 : 9781782160724
Category :
Tools :

What do you get with a Packt Subscription?

Free for first 7 days. $19.99 p/m after that. Cancel any time!
Product feature icon Unlimited ad-free access to the largest independent learning library in tech. Access this title and thousands more!
Product feature icon 50+ new titles added per month, including many first-to-market concepts and exclusive early access to books as they are being written.
Product feature icon Innovative learning tools, including AI book assistants, code context explainers, and text-to-speech.
Product feature icon Thousands of reference materials covering every tech concept you need to stay up to date.
Subscribe now
View plans & pricing

Product Details

Publication date : Apr 15, 2014
Length: 296 pages
Edition : 1st
Language : English
ISBN-13 : 9781782160724
Category :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just NZ$7 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just NZ$7 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total NZ$ 185.97
Scratch 2.0 Game Development Hotshot
NZ$64.99
Scratch 2.0 Beginner's Guide: Second Edition
NZ$80.99
Raspberry Pi Projects for Kids (Second Edition)
NZ$39.99
Total NZ$ 185.97 Stars icon
Banner background image

Table of Contents

12 Chapters
1. Welcome to Scratch 2.0 Chevron down icon Chevron up icon
2. A Quick Start Guide to Scratch Chevron down icon Chevron up icon
3. Creating an Animated Birthday Card Chevron down icon Chevron up icon
4. Creating a Scratch Story Book Chevron down icon Chevron up icon
5. Creating a Multimedia Slideshow Chevron down icon Chevron up icon
6. Making an Arcade Game – Breakout (Part I) Chevron down icon Chevron up icon
7. Programming a Challenging Gameplay – Breakout (Part II) Chevron down icon Chevron up icon
8. Chatting with a Fortune Teller Chevron down icon Chevron up icon
9. Turning Geometric Patterns into Art Using the Pen Tool Chevron down icon Chevron up icon
A. Connecting a PicoBoard to Scratch 1.4 Chevron down icon Chevron up icon
B. Pop Quiz Answers Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon

Customer reviews

Rating distribution
Full star icon Full star icon Full star icon Full star icon Half star icon 4.3
(4 Ratings)
5 star 50%
4 star 25%
3 star 25%
2 star 0%
1 star 0%
Kyle Willey May 29, 2014
Full star icon Full star icon Full star icon Full star icon Full star icon 5
The Scratch 2.0 Beginner's guide covers a variety of useful skills and applies them to practical applications created with Scratch. Somewhat unlike most tutorials for Scratch, the book focuses on an adult audience of parents and teachers, rather than just focusing on students in its audience; it is not too complex for students to grasp but it does also focus on giving educators and parents ways to explain the projects and Scratch itself to an audience.Perhaps the most appropriate way to describe this comes out of the author's own foreword, in which he points out that “I did not set out to write a computer science textbook. It's... a tutorial... to learn how to use Scratch to create stories, animations, games, or art.” This is not to say that it does not give a good background, but the focus of each project is notably oriented on practical use of Scratch to achieve goals.The Scratch 2.0 Beginner's Guide is great as a starting point because it covers all the concerns that a novice to Scratch would have, whether they are tech savvy or not-its automatic saving, block structure, and more are all clearly explained in the early chapters.The nature of the tutorials are well-balanced. There's a conscious attempt made to move from novice difficulty to more advanced projects, so the early projects involve simple Scratch activities to demonstrate basic features, replete with in-depth explanations of Scratch's drawing tools and file management system, while the later projects then move on to more scripting heavy projects. It's a good flow throughout, and works well to help acclimate a novice to Scratch in ways that are easy to follow and satisfying to complete.My favorite part of the setup for this book is the way in which it examines Scratch's available tools. It is immediately apparent that the author is fluent with Scratch and knows how to utilize every possible method at his disposal when working in Scratch, and it comes through in the quality of the explanations throughout the book. While some of the tutorials may not be the most glamorous, focusing on seemingly mundane things like animating a birthday card or building a fortune teller, they manage to do a great job of exploiting a variety of the approaches to Scratch programming and providing a basis for understanding the process of programming rather than just using the methods and functions contained in the examples.In short, the Scratch 2.0 Beginner's Guide is set up as a very basic tutorial, but if you're unfamiliar with either programming in general or Scratch in particular and want to teach yourself or a student to use Scratch, it's a great starting point and will help you learn not only the basics of using Scratch but also put you onto the path for more advanced projects with Scratch.Disclaimer: I got a digital reviewer copy of this book from Packt. I was not and will not be financially compensated for writing this review, nor was I pressured to write a positive review.
Amazon Verified review Amazon
Heleen Durston Jun 19, 2014
Full star icon Full star icon Full star icon Full star icon Full star icon 5
“Scratch 2.0 Beginner’s Guide: Second Edition” was written by Michael Badger and provides several projects that engage the reader and encourage exploring the Scratch 2.0 game engine. Scratch 2.0 is a game engine that is maintained by MIT and requires very little programming knowledge. For this reason, Scratch 2.0 is great for children and adults just getting started with creating their own games. The book’s projects are as simple as creating a greeting card and as complex as a unique version of the classic game “Breakout.” I enjoyed trying the projects in the book. Code is provided in download form from Packtpub’s webpage for the book. I found the code a great reference for each project as it was a simple matter to compare your code to the code from the provided download. The Scratch 2.0 engine is available online and in a desktop version. I found myself using both versions, depending on the project. The desktop version makes it very easy to try code that others have written; by providing an “open document” command. If you use the online version of Scratch 2.0 you will need to upload the project; and that didn’t always work for me.The projects that you create include a simple storybook, a multimedia slideshow (which lets you use your own pictures), and a fortune-telling game. My favorite project is the “Breakout” clone. Each project lasts the length of a chapter, except for the “Breakout” clone which lasts two chapters. At the chapter’s end there is a short quiz, whose answers are found in Appendix B. Appendix A provides information on using Scratch with a PicoBoard, and Raspberry Pi.I recommend “Scratch 2.0 Beginner’s Guide: Second Edition” to anyone who is interested in trying Scratch 2.0. By the end of the book you will have enough confidence to start a project of your own. There is an extensive community supporting Scratch 2.0 and they will be happy to provide help with any problems that you might have.
Amazon Verified review Amazon
M. Blair Jun 30, 2014
Full star icon Full star icon Full star icon Full star icon Empty star icon 4
I really enjoyed reading PacktPub's Scratch 2.0 Beginner's Guide: Second Edition -[...] . The book has some fun and useful projects that start easy and build up to more challenging concepts. The projects in the book explain the programming concept first before diving into greater detail by first having the reader create the code in Scratch and then explaining how the code functions step-by-step.Chapter 1 - Welcome to Scratch 2.0 - goes through an overview of Scratch, the projects in the book and basic programming concepts.Chapter 2 - A Quick Start Guide to Scratch - walks the reader through creating an account on the Scratch website, creating a project, using forever loops, repeat blocks and animating sprites.Chapter 3 - Creating an Animated Birthday Card - takes the reader through the process of creating an animated birthday card. The project shows the reader how to use the built-in paint editor to design bitmap and vector images, initialize the sprite and then transform it using graphical effects, loops and broadcasts.Chapter 4 - Creating a Scratch Story Book - shows the reader how to create a barnyard joke book by displaying the joke in a speech bubble, playing sounds, creating sound effects, moving sprites and changing scenes to navigate the book.Chapter 5 - Creating a Multimedia Slideshow - demonstrates how to create a multimedia slideshow by importing personal photos, resizing the images, adding slideshow controls, recording and playing sounds and using the x and y coordinates to locate the mouse.Chapter 6 - Making an Arcade Game - Breakout (Part I) - walks the reader through building a breakout game by customizing a starter project, cloning sprites to add additional game elements, calculating the sprite direction, using conditional statements and creating a variable to keep the score.Chapter 7 - Programming a Challenging Gameplay - Breakout (Part II) - goes through how to expand the Breakout game by including multiple lives and ball speed. The reader will also learn how to create custom code blocks, variables that use cloud data and how to control program flow with Boolean blocks.Chapter 8 - Chatting with a Fortune Teller - shows the reader how to store and retrieve information in lists, prompt the player for input and check for errors, using conditional statements to control the program and how to develop a test plan.Chapter 9 - Turning Geometric Patters into Art Using the Pen Tool - lets the reader explore using the pen to draw polygons, get user input to create custom patterns and how to draw various patterns and string art.Appendix A - Connecting a PicoBoard to Scratch 1.4 - demonstrates how to connect an external PicoBoard to the Scratch 1.4 programming environment so that the reader can use different sensors to monitor and collect environmental data and graph the results.All in all, this is an outstanding book that provides many practical projects to learn programming fundamentals and Scratch. The projects are easy to understand and follow and create a good programming foundation. Each chapter includes a quick quiz at the end to check for learning before moving on. I highly recommend getting this book for anyone that wants to get started with programming and using Scratch.#scratch #gamedev #scratchdev
Amazon Verified review Amazon
Michael Littman Jun 25, 2014
Full star icon Full star icon Full star icon Empty star icon Empty star icon 3
I evaluated the book for a class I teach. Overall, it seems to be very high quality. The prose is clear and the diagrams vivid and helpful. The example programs are well chosen: fun to play with and easy to understand.Programming is presented at a very mechanical level---get this block, get that block---much like the instructions you get with Ikea furniture or Lego kits. As a result, beginners will have no trouble following along to get things running. However, I didn't see a clear path for the reader to become an intermediate or advanced programmer. As a result, for my purposes, the book isn't appropriate.
Amazon Verified review Amazon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

What is included in a Packt subscription? Chevron down icon Chevron up icon

A subscription provides you with full access to view all Packt and licnesed content online, this includes exclusive access to Early Access titles. Depending on the tier chosen you can also earn credits and discounts to use for owning content

How can I cancel my subscription? Chevron down icon Chevron up icon

To cancel your subscription with us simply go to the account page - found in the top right of the page or at https://subscription.packtpub.com/my-account/subscription - From here you will see the ‘cancel subscription’ button in the grey box with your subscription information in.

What are credits? Chevron down icon Chevron up icon

Credits can be earned from reading 40 section of any title within the payment cycle - a month starting from the day of subscription payment. You also earn a Credit every month if you subscribe to our annual or 18 month plans. Credits can be used to buy books DRM free, the same way that you would pay for a book. Your credits can be found in the subscription homepage - subscription.packtpub.com - clicking on ‘the my’ library dropdown and selecting ‘credits’.

What happens if an Early Access Course is cancelled? Chevron down icon Chevron up icon

Projects are rarely cancelled, but sometimes it's unavoidable. If an Early Access course is cancelled or excessively delayed, you can exchange your purchase for another course. For further details, please contact us here.

Where can I send feedback about an Early Access title? Chevron down icon Chevron up icon

If you have any feedback about the product you're reading, or Early Access in general, then please fill out a contact form here and we'll make sure the feedback gets to the right team. 

Can I download the code files for Early Access titles? Chevron down icon Chevron up icon

We try to ensure that all books in Early Access have code available to use, download, and fork on GitHub. This helps us be more agile in the development of the book, and helps keep the often changing code base of new versions and new technologies as up to date as possible. Unfortunately, however, there will be rare cases when it is not possible for us to have downloadable code samples available until publication.

When we publish the book, the code files will also be available to download from the Packt website.

How accurate is the publication date? Chevron down icon Chevron up icon

The publication date is as accurate as we can be at any point in the project. Unfortunately, delays can happen. Often those delays are out of our control, such as changes to the technology code base or delays in the tech release. We do our best to give you an accurate estimate of the publication date at any given time, and as more chapters are delivered, the more accurate the delivery date will become.

How will I know when new chapters are ready? Chevron down icon Chevron up icon

We'll let you know every time there has been an update to a course that you've bought in Early Access. You'll get an email to let you know there has been a new chapter, or a change to a previous chapter. The new chapters are automatically added to your account, so you can also check back there any time you're ready and download or read them online.

I am a Packt subscriber, do I get Early Access? Chevron down icon Chevron up icon

Yes, all Early Access content is fully available through your subscription. You will need to have a paid for or active trial subscription in order to access all titles.

How is Early Access delivered? Chevron down icon Chevron up icon

Early Access is currently only available as a PDF or through our online reader. As we make changes or add new chapters, the files in your Packt account will be updated so you can download them again or view them online immediately.

How do I buy Early Access content? Chevron down icon Chevron up icon

Early Access is a way of us getting our content to you quicker, but the method of buying the Early Access course is still the same. Just find the course you want to buy, go through the check-out steps, and you’ll get a confirmation email from us with information and a link to the relevant Early Access courses.

What is Early Access? Chevron down icon Chevron up icon

Keeping up to date with the latest technology is difficult; new versions, new frameworks, new techniques. This feature gives you a head-start to our content, as it's being created. With Early Access you'll receive each chapter as it's written, and get regular updates throughout the product's development, as well as the final course as soon as it's ready.We created Early Access as a means of giving you the information you need, as soon as it's available. As we go through the process of developing a course, 99% of it can be ready but we can't publish until that last 1% falls in to place. Early Access helps to unlock the potential of our content early, to help you start your learning when you need it most. You not only get access to every chapter as it's delivered, edited, and updated, but you'll also get the finalized, DRM-free product to download in any format you want when it's published. As a member of Packt, you'll also be eligible for our exclusive offers, including a free course every day, and discounts on new and popular titles.