Scratch is a fun, free, beginner-friendly programming environment where you connect blocks of code to build programs. While most famously used to introduce kids to programming, Scratch can make computer science approachable for people of any age. Rather than type countless lines of code in a cryptic programming language, why not use colorful command blocks and cartoon sprites to create powerful scripts?
In Learn to Program with Scratch, author Majed Marji uses Scratch to explain the concepts essential to solving real-world programming problems. The labeled, color-coded blocks plainly show each logical step in a given script, and with a single click, you can even test any part of your script to check your logic. You'll learn how to:
Harness the power of repeat loops and recursion
Use if/else statements and logical operators to make decisions
Store data in variables and lists to use later in your program
Read, store, and manipulate user input
Implement key computer science algorithms like a linear search and bubble sort
Hands-on projects will challenge you to create an Ohm's law simulator, draw intricate patterns, program sprites to mimic line-following robots, create arcade-style games, and more! Each chapter is packed with detailed explanations, annotated illustrations, guided examples, lots of color, and plenty of exercises to help the lessons stick. Learn to Program with Scratch is the perfect place to start your computer science journey, painlessly.
Chapter 1 Getting Started
What Is Scratch?
Scratch Programming Environment
Your First Scratch Game
Scratch Blocks: An Overview
Arithmetic Operators and Functions
Chapter 2 Motion and Drawing
Using Motion Commands
Pen Commands and Easy Draw
The Power of Repeat
More on Cloned Sprites
Chapter 3 Looks and Sound
The Looks Palette
The Sound Palette
Chapter 4 Procedures
Message Broadcasting and Receiving
Creating Large Programs in Small Steps
Working with Procedures
Chapter 5 Variables
Data Types in Scratch
Introduction to Variables
Displaying Variable Monitors
Using Variable Monitors in Applications
Getting Input from Users
Chapter 6 Making Decisions
Chapter 7 Repetition: A Deeper Exploration of Loops
Majed Marji is a senior development engineer at General Motors and an adjunct faculty member at Wayne State University in Michigan. He holds a PhD in Electrical Engineering from Wayne State University and an MBA in strategic management from Davenport University.
Comments about oreilly Learn to Program with Scratch:
I am using Scratch to introduce my 10 year old grandson to the concepts of programming. The MIT site and software tool are great in themselves, but this accompanying book is ideal. The introduction to the software interface is thorough. But more importantly, the concepts chapters are first class, both in terms of the short (learn this concept before you move on) and more detailed examples and problems. By our second session, my grandson was asking to work the problem alone while I looked over his shoulder. I find the quantity of material devoted to each topic sufficient and consider this an excellent purchase.
Bottom Line Yes, I would recommend this to a friend