1, 2, 3, code ! - Cycle 3 activities

The activities module for Cycle 3 alternates unplugged exercises (done without a computer but with experimentation and documentary equipment) and plugged programming exercises (using a computer).

The theme that ties the activities together is the exploration of an unknown planet.

  • Sequence I (entirely unplugged) focuses on preparing the mission (How will you get around and communicate?) and allows students to become familiar with programming language and encoding information (first using numerals, then using binary code).
  • Sequence II, mainly plugged, gives students a similar mission through a video game they must program. Students learn about the programming environment and define the steps and tasks needed to complete the project as they work at their own pace. Several unplugged activities help students to fully understand the concepts (variables, tests, loops, logical operators) used during the programming activities.
  • Sequence III (entirely unplugged) returns to the issue of how information is represented to teach students how to code images, learn cryptography techniques for secure data exchanges, etc.

If the classroom is not equipped with computers, Sequences 1 and 3 can be done back to back so students can complete an entirely unplugged IT project, which is an interesting approach in and of itself.

 

Note: Contrary to the activity modules for Cycles 1 and 2, here we do not have a "robot" variation. However, if the classroom is equipped with robots, you can substitute or round off the Scratch lessons with robot programming lessons. These types of lessons will introduce students to the ideas of algorithms, programs, tests, events, etc. The Thymio II robot, used in the Cycle 1 and 2 lessons, can also be used for Cycle 3. You can even operate it using Scratch (this requires installing an extension for Scratch, refer to https://www.thymio.org/en:scratchprogramming-asebascratch).

 

Lesson summary

Sequence I: Prepare the mission

 

Lesson

Title

Summary

Lesson 1

How to remotely operate a vehicle

Students must provide the instructions to remotely operate a vehicle. To do this, they define a programming language and explore the difference between it and a natural language. They are also introduced to the notion of a software bug.

Lesson 2

How to encode a message with numbers

Students must encode a textual message using only numbers. To do this, they make suggestions and then create a correspondence table for the letters and numbers for use by the entire class. They use this table to encode a message that they send as well as to decode a message they receive. 

Lesson 3

How to code information in binary

Students must now use only two symbols (0 and 1) to transmit messages. They explore the ways of encoding different information (the four cardinal directions – North/South/East/West, the seven days of the week, etc.) by combining 0s and 1s as an introduction to binary coding.

Lesson 4

How to encode and decode a binary message

Continuing on from the previous lesson, students apply what they have learned to encode a short worded message in binary code, then decode a message in binary code they receive.

 

Sequence II: Simulate the mission in Scratch

For this sequence, we reason in "steps" rather than lessons (see note on project pedagogy, at the start of this sequence).

 

Step

Title

Summary

Step 1

Introduction to the Scratch programming environment

The students learn about Scratch, a programming environment suited to elementary school students. They learn to launch the program and follow a few simple instructions.

Step 2

Customizing the environment and saving all work

The students learn to customize Scratch (avatar TJ1/avaar-sprite TJ2 and background) and save their work to be used again later.

They discuss the different steps they will follow to create their video game.

Step 3

Operating the rover

The students create their first program, which will let them operate the rover using arrows. They learn about the coordinate system.

Step 4

Gathering resources and managing scores

Students complete their program by adding resources they must pick up (new sprites) and creating a variable for their score (this score increases as more resources are picked up). They learn to program conditional constructs (if– then) and use sensors.

Step 5

Plugged and unplugged activities to better understand certain algorithmic concepts

This step, optional, does not concern the video game programmation and must not interrupt it. You should do it alongside, during maths or english class.

Cette étape, optionnelle, ne concerne pas la programmation du jeu vidéo et ne doit pas l’interrompre (à faire en parallèle, sur le temps de mathématiques ou de français).


Alongside their programming activity, students deepen their understanding of certain algorithmic concepts introduced during Step 4: variables, tests, loops, logical operators and even the notion of algorithm.

Step 6

Avoiding obstacles and managing player lives

Students now add obstacles to avoid (new sprites) and create a variable for the number of "lives". They are again exposed to the ideas of tests, loops and variables seen previously and deepen their understanding of what an event is.

Step 7

Ending the game: "Game over"

Students complete their program by introducing a test on the number of remaining lives: the message "Game over" appears and the program stops when no more lives remain.

Step 8

Adding challenges

Students finalize their video game by adding additional challenges: a countdown, a tornado that goes faster and faster and moves around randomly, etc. The concepts seen during the previous lessons – tests, loops, variables and events – are all reviewed.

Step 9

Further study in Scratch

Here are several ideas to explore other functionalities in Scratch, such as giving students extra options for their personal projects.

 

Sequence III: Sending news

 

Lesson

Title

Summary

Lesson 1

How to send an image

Students must figure out how to transfer an image remotely. To do this, they learn that an image can be represented by a pixel grid. They learn about the notion of resolution as they see that the more pixels an image has, the clearer it becomes, but also the slower it is to transfer.

Lesson 2

How to code a black and white image

Students apply what they learned from the previous lesson to coding black and white digital images. They first view a single file in a text editor and an image editor to understand how the information is coded. They then code a small checkerboard themselves.

Lesson 3

(Optional) How to code a grayscale or color image

Students take what they learned in the previous lesson further by learning how to code a gray and color digital image.

Lesson 4

How to ensure a message is secure

To protect their messages, students learn about encryption using a simple algorithm (called  Caesar’s cipher), which involves shifting the letters of a message.

Lesson 5

(Optional) How to make sure our data are successfully sent

Students learn that it is possible to detect and correct errors introduced when storing or transferring a file by adding the right information. This lets them do a sort of "magic trick."

 

Review: Defining computer science

This lesson is a review of what computer science is all about using the poster created during the previous sequences. With the help of documentary research, students create a timeline of the key moments in the history of computer science.

 

Conceptual scenario: "Cycle 3 computer science"

The notions covered during these three sequences for Cycle 3 can be organized as below.

 

 

 


<< Cycle 2 activities Pedagogical module  

 

Project partners

Aucun résultats