Helping Kids with Coding For Dummies

Helping Kids with Coding For Dummies

by Camille McCue, Sarah Guthals


View All Available Formats & Editions
Choose Expedited Shipping at checkout for guaranteed delivery by Wednesday, April 15


Help for grown-ups new to coding

Getting a jump on learning how coding makes technology work is essential to prepare kids for the future. Unfortunately, many parents, teachers, and mentors didn't learn the unique logic and language of coding in school. Helping Kids with Coding For Dummies comes to the rescue. It breaks beginning coding into easy-to-understand language so you can help a child with coding homework, supplement an existing coding curriculum, or have fun learning with your favorite kid.

The demand to have younger students learn coding has increased in recent years as the demand for trained coders has far exceeded the supply of coders. Luckily, this fun and accessible book makes it a snap to learn the skills necessary to help youngsters develop into proud, capable coders!

  • Help with coding homework or enhance a coding curriculum
  • Get familiar with coding logic and how to de-bug programs
  • Complete small projects as you learn coding language
  • Apply math skills to coding

If you’re a parent, teacher, or mentor eager to help 8 to 14 year olds learn to speak a coding language like a mini pro, this book makes it possible!

Product Details

ISBN-13: 9781119380672
Publisher: Wiley
Publication date: 05/08/2018
Series: For Kids For Dummies Series
Pages: 384
Sales rank: 1,114,734
Product dimensions: 7.30(w) x 9.20(h) x 0.40(d)
Age Range: 10 - 13 Years

About the Author

Camille McCue, PhD, is Director of Curriculum Innovations at the Adelson Educational Campus in Las Vegas where she leads the Startup Incubator, teaches STEM, and kickstarts K-12 learning initiatives. Sarah Guthals, PhD, co-founded an ed-tech company and now continues to build technology for kids to learn, create, and share safely online. She loves to teach teachers how to teach coding in the classroom.

Table of Contents

Introduction 1

About This Book 1

Foolish Assumptions 2

Icons Used in This Book 3

Where to Go from Here 3

Part 1: Getting Started with Coding 5

Chapter 1: Welcome To (Or Back To) Coding 7

Why Kids Are Coding 8

What are they learning? 8

How are they learning? 9

What does it mean down the road? 10

Why You Need to Know Coding 11

Fear and loathing (of coding) 11

You may already know more than you think 12

Where Do You Come In? 13

In the classroom 13

Camp or after-school coach 15

Mentor 16

Working with Young Coders 18

Chapter 2: Understanding the Big Ideas 19

Seeing the Big Picture in Coding 19

Acting Out the Big Picture, Unplugged 20

Dramatizing a noncoding process 21

Walking through some daily tasks 22

Creating an Algorithm 23

Turning a picture into words 23

One possible vacuuming algorithm in code 24

Representing Algorithms 26

Acting it out 27

Drawing a picture 27

Creating a storyboard 28

Building a flowchart 28

Writing pseudocode 30

Commenting the bones 31

Organizing with Sequence, Selection, and Repetition 33

Sequence 34

Selection 35

Repetition 36

Including Randomness in Your Coding 38

Chapter 3: Figuring Out Programming Languages 41

What You Want in a Language 42

Free Languages for Tots and Kids 42

The Foos 42

Think & Learn Code-a-Pillar 43

Daisy the Dinosaur 43

Scratch Jr 44

Free Languages for Youth and Tweens 45

Scratch 45

Hopscotch 47

Kodu 47

Languages for Teens and Older 48

Alice 48

MIT App Inventor 2 49

Python 50

JavaScript 53

Java 55

Other Awesome (Not-So-Free) Languages 58

MicroWorlds EX 58

Tynker 58

GameSalad 58

Part 2: Getting Your Hands on Code 61

Chapter 4: Working with Words 63

Communicating with Text 63

Showing Text Onscreen 64

Using pseudocode 64

Using Scratch 64

Using Python 65

Using HTML 66

Using JavaScript in an app 66

Using Java 68

Words In, Words Out 69

Using Scratch 70

Using Python 71

Using HTML and JavaScript 71

Using JavaScript in an app 72

Combining Text Onscreen 74

Using pseudocode 75

Using Scratch 75

Using Python and other languages 75

Formatting Text Onscreen 77

A Mad Libs Example 78

Chapter 5: Knowing Where You Are and Where You’re Going 81

Acting Out Position, Unplugged 82

Setting and Finding Position 85

Using pseudocode 85

Using Scratch to set position 86

Using Scratch to find position 87

Using JavaScript 87

Positioning Objects Randomly 93

Using Scratch 93

Using JavaScript 94

Setting and Finding Direction 95

Using pseudocode 95

Using Scratch 96

Setting Object Direction Randomly 97

Using Scratch 97

Turning 98

Using pseudocode 98

Using Scratch 98

Acting Out Motion, Unplugged 99

Making an Object Move 100

Using pseudocode 100

Using Scratch 101

Using JavaScript 103

Asteroid Blaster 104

Chapter 6: Getting Fancy with Graphics and Sound 107

Sizes of Images and Sounds, Unplugged 108

Activities surrounding images and sounds 108

Knowing your sizes 109

Using Graphics in Your Programs 109

Image file types 109

Creating images 110

Finding images on the web 111

Importing a JPEG or PNG in Scratch 114

Importing a GIF in Scratch 116

Importing a JPEG, PNG, or GIF in JavaScript 117

Adding Sound to Your Programs 117

Sound file types 118

Creating original sounds 118

Finding sounds on the web 119

Importing sounds into Scratch 120

Importing audio into JavaScript 121

Creating a Sound Board 122

Part 3: There is Math on This Test! 125

Chapter 7: Tackling These Ever-Changing Variables 127

Acting Out Variables, Unplugged 127

Variable parts 128

Dramatizing variables 130

I Do Declare (And Initialize) 132

Using pseudocode 132

Using Scratch 133

Using Python 134

Using JavaScript 135

Using Java 136

Checking on Variable Values 137

Using Scratch 138

Using Python 138

Using JavaScript 138

Using Java 140

Incrementing and Decrementing Variables 140

Using pseudocode 140

Using Scratch 141

Using Python 141

Using JavaScript 142

Using Java 142

Creating a Stock Ticker 142

Chapter 8: Computing Using Math 145

Acting Out Math, Unplugged 145

Number types 146

Dramatizing math 146

Doing Simple Math 149

Using pseudocode 149

Using Scratch 149

Using Python 150

Doing Advanced Math Operations 150

Using pseudocode 151

Using Scratch 152

Using Python 153

Oh So Mod — Using the Mod Operation 156

Using pseudocode 157

Using Scratch 157

Using Python 157

Ordering Those Operations (PEMDAS) 157

Using Scratch 158

Using Python 158

Rounding 159

Rounding via casting in Java 160

Rounding decimals to integers via methods 160

Generating and Using Random Numbers 162

Using pseudocode 162

Using Scratch 162

Using Python 163

Coding a Crypto Code Maker 163

Chapter 9: Helping with Logic Operations 167

Simple Logic, Unplugged 167

Programming Simple Conditionals 169

In pseudocode 169

In Scratch 169

In Python 170

In JavaScript 170

In Java 172

Advanced Logic, Unplugged 174

Coding Compound Conditionals (aka, AND, NOT, and OR Will Get You Pretty Far!) 176

In pseudocode 177

Compound conditionals in Scratch 177

In Python 179

In JavaScript 181

In Java 181

Rock, Paper, Scissors 182

Chapter 10: Getting Loopy 185

Loops, Unplugged 185

Repeat fun, unplugged 186

Random loop conditions, unplugged 186

Loop Types and Structures 187

Infinite loops 188

Actions repeated in loops 188

Conditions of loops 188

Using pseudocode 189

Using Scratch 191

Using Python 193

Nesting Loops 196

Using pseudocode 196

Using Scratch 197

Using Python 198

Coding the Classic Fibonacci Sequence 199

Chapter 11: Adding Lists 201

Lists, Unplugged 201

Introducing Lists 203

Using pseudocode 203

Using Scratch 205

Using Java 208

Sorting Lists 215

Selection sort: An easy sorting algorithm 215

Common application: Arranging numbers in order 216

Searching Lists 217

Linear versus binary searching algorithms 217

Common application: Finding a phone number 218

Chapter 12: Coding Subprograms 221

Subprograms, Unplugged 221

Starting with Pseudocode 223

Creating a Spirograph with Subprograms 224

Pseudocode 225

Scratch 225

JavaScript 227

Java 228

Coding Subprograms with Parameters 230

Scratch code block with parameters 230

JavaScript, with parameters 233

Java, with parameters 234

Part 4: Applying What You Know 237

Chapter 13: Fixing Problems by Debugging 239

Debugging, Unplugged 240

Finding Common Syntax Errors 242

Scoping errors 242

Typing errors 243

Incorrect data types 244

Finding Common Semantic Errors 245

Infinite loops 245

Off by one 246

Strategies for Debugging 248

Turning sections on and off 248

Testing sample data 251

Adding output messages 251

Walking Away 253

Chapter 14: Creating a Webpage 255

Getting Set Up 255

Creating a Basic Webpage Layout 261

The skeleton: HTML basics 262

The aesthetics: CSS 265

Getting Fancy with Color and Graphics 272

Adding color to your page 272

Introducing graphics 276

Adding Hyperlinks 278

Going Interactive with JavaScript 280

Adding buttons 280

Changing your page with buttons 282

Combining HTML, CSS, and JavaScript 283

Chapter 15: Building a Mobile Game 289

Getting Started with MIT App Inventor 289

Community and support within MIT App Inventor 291

The layout of MIT App Inventor 292

Using an Emulator versus a Real Device 294

Using the Android Emulator 294

Using a real Android device 295

Testing on the emulator and Android device 295

Designing Mobile Apps 302

Adding the Components in Design View 303

Coding Your Mobile App 306

Getting your puppy moving 306

Setting up your start screen and variables 308

Coding random placement of items 309

Coding collision with items 311

Levels, timers, and final score 312

Distributing Your Apps 315

Chapter 16: Programming Simple Electronics 317

Gathering Your Hardware 317

The micro:bit board 318

Buying the board and components 318

Accessing the Software 320

Navigating the interface 320

Writing and using a program 321

Don’t Wake Baby Gadget 324

Flowcharting the program 324

Writing the code 326

Downloading code to the micro:bit 333

Connecting hardware components 333

Testing the device 334

Trying Wacky and Fun Variations 335

Part 5: The Part of Tens 337

Chapter 17: Ten Do’s and Don’ts for Selecting a Kids Coding Curriculum 339

DO Find the Right Entry Level 340

Getting started in elementary grades 340

Getting started in the middle grades 341

Getting started in high school grades 341

DON’T Assume Cost Equals Quality 343

DO Balance Lessons with Free Exploration 344

DON’T Instantly Dismiss Teaching Languages 344

DO Consult CSTA for Guidance 346

DON’T Buy “Coding” Toys for Babies 346

DO Emphasize the Soft Skills 346

DON’T Let Kids Get Stuck in a Loop 347

DO Present the Bigger Picture 347

DON’T Stereotype Coders 347

Chapter 18: Ten Ways to Keep the Coding Learning Going 349

Unplugged 349

Research Pioneers of Computing 350

Go Lateral from Code 351

Language Tracking 351

Smart Home Projects 352

Include Outside Passions 352

Open-Source Projects 353

Group Projects 354

Community Support 354

Portfolios 355

Index 357

Customer Reviews