5th Grade

5th Grade Curriculum Overview

Review your grade-level pathway

Fifth graders learning computer science with 9 Dots will focus on fundamental coding concepts, like loops and functions. While earlier grades cover similar topics using block-based coding, students in this course will learn how to code in JavaScript (JS), a text-based coding language. 

Students begin with an Intro to JavaScript module to gain a base understanding of this new coding language and begin to write programs in JavaScript. Then, they will move into the Parameters module where they will learn how to define and call functions with parameters, coding tools that allow students to write reusable, efficient code. Students will finish the course with a culminating project module in which they will use the skills they’ve learned in the previous two modules to design and code a “video game character” to compete in a code review mystery game.

Below are in-depth descriptions of each 10-lesson module, with links to the full Scope and Sequence for each.

Module F1: PixelBots JS Intro to Coding Students are introduced to text-based coding using JavaScript in PixelBots. The lessons begin with coding challenges that focus on sequencing code. Students read, write, and debug code with increasing complexity. Students are then introduced to the “loop” tool, which allows students to create repeating patterns using more organized and easy-to-read programs. Students will focus on decomposing large programs using comments that describe what their code does. The “debugging” strategy students learn takes a two-pronged approach, using first alerts and then tools in the editor to help students find and fix errors in their code. By the end of this module, students will have a basic understanding of text-based coding in JavaScript and will be able to write programs that both computers and other programmers can understand. (Scope and Sequence)
Module F2: PixelBots JS Parameters Students are introduced to functions and parameters in JavaScript. The lessons begin with coding challenges that focus on reading and calling “functions,” repeatable code that can be reused in different parts of a program. Students then learn to define and call functions with increasing complexity. Students are then introduced to “parameters,” pieces of information provided to functions that allow them to be customizable. Students practice writing functions with parameters to create modular and reusable code. By the end of the module, students will be able to define and call a function with a color or length parameter to paint a line of any color or length in PixelBots. (Scope and Sequence)
Module F3: PixelBots JS Mystery Project Students will plan and code a PixelBots game character, and then they will use the code from their characters to participate in and solve a mystery game. They will use the culminating skills that they have learned in the previous modules to complete this final project. Students will practice coding with parameters, loops, comments, white spaces, and logical naming conventions for readability. By Lesson 5, students will have decomposed a colorful and thoughtful design for their game characters and will have written code with functions. At the end of Lesson 5, students will play the mystery game and share their finished project with their teammates. They will be given code requirements to pass in order to receive hints that help them solve the mystery. Teachers can then optionally continue on to Lessons 6-10, in which students design a villain game character. By the end of Lesson 10, students will have an opportunity to play and solve an extension of the mystery game. (Scope and Sequence)

Learn your core computer science (CS) concepts

Sequencing (F1)

A sequence is a set of steps carried out in order, and sequencing in computer science is the process of writing or following instructions in order.

The sequence to the right completes the steps in the order 1 through 8.  PixelBot first turns right, then moves forward one step, then paints the cell blue, then moves forward five steps, and so on and so forth.

Try it out!

 
 

This video will walk you through a writing challenge similar to the one above::


Loops (F1, F2)

A loop is a block of code that repeats a sequence.  Loops are useful because they allow us to repeat sequences of code without rewriting the same lines of code multiple times.

The loop on the right makes PixelBot move forward, paint black, move forward, then paint purple . This loop repeats twice, as indicated by the “2” inside the parentheses on line 1 .

Try it out!

This video will walk you through a writing challenge similar to the one above:


Functions (F2)

A function is code you can call over and over again that performs a specific task. Functions are useful because they allow us to reuse code in different parts of a program. 

On the right, the function “purpleLine” is defined on lines 6-12. When the purpleLine function is called on lines 2 and 4, the program will run the code inside the definition.

Try it out!

This video will walk you through the solution to the writing challenge above:

Francisco Montenegro