Beauty and Joy of Computing
Algorithms
Introduces the class to the idea of searching a list by building a script. Learners modify a guessing game script that will find a number in a list.
Beauty and Joy of Computing
Combining List Operations
Use list operations to modify an earlier version of Tic Tac Toe. The fourth lab in a series of five has pupils combine list operations to build more powerful operations. They take a project from a previous unit and enhance it to keep...
Teach Engineering
Automatic Floor Cleaner Computer Program Challenge
Have your class use the engineering design process to program a vacuum robot. Using computer engineering concepts, teams program an automatic floor cleaner to traverse designated patterns.
Teach Engineering
Android Acceleration
Prepare to accelerate your Android. Pupils prep for the upcoming activity in this third installment of a four-part series. The lesson plan progresses nicely by first introducing different types of acceleration to the class. The teacher...
Teach Engineering
Storing Android Accelerometer Data: App Design
There's an app for that! Pupils learn to build an app that will store data on an Android. The instructional activity introduces class members to the tiny database, TinyDB, for Android devices. A video tutorial provides an...
Code.org
Practice PT - Design a Digital Scene
The final performance task for the unit requires class members to utilize what they have learned to create a personal digital scene. Groups work together to develop a scene and then, using top-down design, break the scene into...
Code.org
Creating Functions with Parameters
The pupils practice modifying parameters in a function to add variations to their under the sea scene. The resource also introduces random number functions that alter the scene every time the program runs.
Code.org
Functions and Top-Down Design
Let me break it down for you! Introduce your class to a way of breaking up a complicated task into its component pieces. Individuals draw a complex figure using JavaScript and then break it down to help determine the...
Code.org
The Need for Programming Languages
LEGO see if you can recreate my design. Individuals build an arrangement from LEGO blocks and write directions for someone else to follow in order to recreate the arrangement. Pairs then swap directions and try to...
Code.org
Encoding B and W Images
Imagine drawing with zeros and ones. The third lesson in a unit of 15 introduces the class to creating black and white images. Pairs get together to create an encoding scheme in order to make these images. They move on to a...
Code.org
Looping and Random Numbers
Repetition, repetition, repetition. Get your class to efficiently repeat a section of code over and over again by introducing looping. Class members learn looping to quickly recreate objects they want to appear more than once in their...
Code.org
Creating Functions
Quit repeating yourself ... you can make this simpler! Rather than repeating the same set of code over and over, class members learn to build and call functions in a series of challenges in App Lab. In the end, they combine...
Code.org
Creativity in Algorithms
Groups work with the program they built in the previous lesson to make it more creative. The resource challenges pupils to add functionality to their existing programs by adding a new command.
Code.org
The Need for Algorithms
Pairs work through two scenarios that require them to generate an algorithm. The first activity requires pairs to define a common language to use; the second comes with the language. The pairs then must determine how to code the...
Code.org
APIs and Using Functions with Parameters
Introduce your class to the API, a reference guide that lists and explains the functionality of programming language. Using JavaScript, individuals draw complex designs that require additional commands and parameters defined in the...
Code.org
Using Simple Commands
Turtles might be slow, but class will zoom by when your pupils build a program in which reptiles draw a grid. Using App Lab and JavaScript, class members build a program to find the most efficient way to draw an image of a...
Code.org
Lossy Compression and File Formats
I'm compressed. Groups do a rapid research of different file types to determine what kind of compression the formats use and how it works. They share their information with the rest of the class until everyone has all the information for...
Code.org
Text Compression
The second lesson in a unit of 15 introduces pupils to text compression. The class begins with discussing how they already use text compression when sending text messages. Pairs learn more about the subject as they work to compress a...
Computer Science Field Guide
Computer Science Field Guide
Imagine computer science all summed up in one book. This resource provides 16 chapters that cover many aspects of computer science, ranging from algorithms to software engineering. The e-book contains links to applets to help explain...
Code.org
Encoding and Sending Formatted Text
Introduce your class to encoding text. Pairs work together to create a protocol to send text prior to learning ASCII encoding. Groups then collaborate to send and translate ASCII codes creating a formatted text message.
Computer Science Unplugged
Marching Orders—Programming Languages
Computers need precise directions to complete a task. Class members experience what it is like to program a computer with an activity that asks one pupil to describe an image while classmates follow the directions to duplicate the picture.
Computer Science Unplugged
Treasure Hunt—Finite-State Automata
Introduce your class to the concept of finite-state automata with an activity that asks individuals to try to map their way to Treasure Island by taking different routes though an island chain. Each island has two ship sailing...
Computer Science Unplugged
The Orange Game–Routing and Deadlock in Networks
How is data able to move in a congested network? Groups simulate moving data around a congested network by passing fruit around a circle, following specific rules, until everyone ends up with their own fruit. Extension activities...
Computer Science Unplugged
Codes in a Song—Modems
Let's listen to some codes. To understand how a modem sends binary numbers over a phone line, class member listen to the codes included in the provided mp3 files, translates the tones to binary numbers and then convert the...