Skip to main content

Driving Towards the Future

Main Image
Information Technology

Participants explore the current topic of self-driving cars and use it as a platform to learn about the big ideas behind computational thinking.

In this workshop, participants will learn about the current topic of self-driving cars and use it as a platform to learn about the big ideas behind computational thinking – how to break down a problem into steps, and how to create a process that can be followed to reach a goal. As they “program” a car through different levels involving parking, loops and navigating curves, they will take on the role of the programmer, as well as the role of the computer that executes the program. As an option, a debate or discussion on ethical issues related to self-driving cars can be included. 

What You Need

Physical Requirements

  • Large room with demonstration area at the front. 
  • Access to a projector to play the videos for the Introduction and in Activity 3: Ethics of Self-Driving Cars. 

Activity 1: Introduction

No materials needed

Activity 2: Programming the cars

  • Challenge books with commands velcroed inside
    • Version A (1 per group)
    • Version B (1 per group)
  • Cars (2 per group)
  • Rulers (2 per group)

Activity 3: Ethics of Self-Driving Cars

No materials needed

Activity 4: Debate (optional)

  • Sticky notes
  • Pencils

Guide:

What To Do

Activity Prep

  • Ensure that the commands are scrambled in the “commands to pick from” area of their respective pages or simply scrambled in the case of Level 3. 

Activity 1: Introduction 

  • Introduce the topic by asking the group to share what they already know about programming. 
  • Ask the participants to provide you the step-by-step instructions on how to make a bowl of cereal. Mime each action. 
    • Try to execute the “command” as literally as possible, sometimes leading to unexpected results. If someone gives a complex command, reply in a robotic voice “I do not understand this command. Please use simpler steps”. 
    • An example of a successful list of instructions could be: 
      • Open the cupboard ->Get a bowl ->Open fridge ->Get milk->... 
  • Explain how computers and robots perform tasks very accurately and it is important to make sure to provide them with precise commands in a language they understand.
  • Have participants brainstorm examples of machines/objects that are programmed. 
    • If the self-driving car example does not come up on its own, ask them specifically about it. 
  • Show the video “A Ride in the Google Self Driving Car”
  • Ask participants to share things from the video that the car is programmed to do in order to drive safely on the road. 

Activity 2: Programming the Cars

  • Separate participants into groups of two or four, depending on the size of the room and the number of challenge books available. 
  • Distribute materials. Each group will need:
    • “Version A” challenge book
    • “Version B” challenge book 
    • Two cars 
    • Two rulers
  • Each group will have two versions of each challenge that group members will work on at the same time. Solutions to the following challenges can be found on page 23 of the Driving Towards the Future Manual.

Programming Demonstration 

  • Choose a spot in the classroom that would require you to go forward, rotate 90º and go forward again. Ask participants to provide commands on how to get to this location.
  • The first step is to go forward. Make sure they give a distance. 
  • Answers may vary for the next step. 
    • Draw a sketch on the board to help explain what clockwise and counterclockwise mean (avoid using left and right). 
    • Draw a sketch on the board to explain what a 90º and 45º turn looks like. 
  • The next step is to go forward. Make sure they give a distance.

Level 1: Parking Challenge

  • Instruct participants to turn to Level 1 in their challenge book.
    • They will need to program a car to park in its designated parking spot. 
  • They will put the commands in order on the left side of the programming box. 
    • Remind participants to pay attention to where the front and back of the car are supposed to point. 
  • When everyone in the group is finished programming, they are going to switch books with their other group member(s). They are going to follow the commands written to test each other’s solution.
  • Encourage participants to provide feedback to each other and help each other until all the programs “execute” correctly. 

Zigzag Demonstration

  • Explain that a “repeat command” can be used instead of writing the same commands over and over again when you want a robot to do the same thing several times. 
  • Share the example of a zigzag: instead of saying “take one step left, take one step right” over and over again you can say “repeat the following until you get to a wall: take one step right then one step left”. 
  • Demonstrate the command by zigzagging across the classroom. 

Level 2: Repeating Commands (“loops”)

  • Have participants turn to Level 2 in their challenge book. 
    • The car is going to go through the list of commands put in the “repeat” box four times.
    • The goal is to have the car drive around the park and come back to exactly where it started. 
  • When everyone in the group is finished programming, they are going to switch books with their other group member(s). They are going to try to follow the commands written to test each other’s solution.
  • Encourage participants to provide feedback to each other and help each other until all the programs “execute” properly. 

Decisions Examples 

  • Explain that the term “if” is used in programming when something different needs to be done when the circumstances for the robot or self-driving car change.
    • For example, “if there is a stop sign, apply the brakes”. 
  • Go through another example where you are a robot that is programmed to walk to the end of the classroom and turn around. The commands can be “if there is no wall in front of you, take one step forward. If there is a wall in front of you, turn around 180º” or a repeat command can be used to tell you to keep checking for a wall and moving until you get back to where you started. 
    • Demonstrate this concept using your body.

Level 3: Decisions (sensors and “if/else” statements)

  • Participants will program the car so that it follows the road across the page from the left to the right without driving on the curb. 
  • Let them know that each time the car runs through the program, it is going to do one of the following things:
    • If the car is on top of the yellow line, it will do what is in the left box. 
    • If the car touches the white curb, it will do what is in the middle box. 
    • If the car is completely on the grey pavement, it will do what is in the right box. 
  • When everyone in the group is finished programming, they are going to switch books with their other group member(s). They are going to try to follow the commands written to test each other’s solution.
  • Encourage participants to provide feedback to each other and help each other until all the programs “execute” properly.
  • Check the successful programs as you circulate. A common mistake is only to put a “rotate” instruction in one of the boxes, which will make the car rotate on itself continuously instead of getting off the embankment or off the yellow line.

Activity 3: Ethics of Self Driving Cars 

  • Explain that there are some ethical issues surrounding self-driving cars. 
  • Play “The social dilemma of self-driving cars”.
  • Ask participants to share their opinion on the situation described in the video.
    • Imagine shopping for a car and having the choice- a car that sometimes sacrifices the drive or one that preserves the passenger at all costs. What would you do?

Activity 4: Debate (optional) 

  • Divide the class into 3 groups. Give sticky notes to each group.
  • Give each of the 3 groups one side of the topic to prepare:
    • “Programmers and companies should decide whether their car should be programmed to sometimes sacrifice the driver”.
    • “The owner of the car should be able to change the setting on the car so that it behaves how the owner wants it to”.
    • “The government should make laws forcing self-driving cars to sometimes sacrifice the driver”.
  • Allow five minutes of silent time for individual brainstorming. Each participant should write down at least one idea.
  • Give the groups 10 minutes to go through all of the ideas. Tell them to group similar ideas together. 
  • Give the group 20 minutes to choose their top three arguments and appoint one speaker who will present each argument.
  • Introduce the speech structure on the board:
    • Introductions: Who are you and what side of the topic are you on?
    • Rebuttal: Unless you are the first speaker, start by saying, “First let’s go over what the previous person said” and explain why you disagree.
    • Argument: Say “Now on to my point” and explain your first argument. Use facts or examples if possible.
  • Ask the non-speakers to take notes about strong and weak points.
  • Give each speaker a turn and guide them through the speech structure as needed.
  • Debrief the speeches by asking a few questions:
    • What were the strong points of each side? 
    • What were the weaker points? 
    • Did anyone change their opinion after listening to the speeches?

Wrap up

  • Discuss possible careers related to the topics covered and what they would need to do (schooling, experience, etc…) to get into those careers.

Coding is a way for us to give instructions or commands to a machine, such as a computer or a robot that makes it do what we want it to do. Computers and robots always do things very accurately – they do exactly what you tell them to do. On the other hand, you have to be able to think through how to describe what you want them to do very precisely and in a language that they understand. This activity provides an opportunity to practice these skills without the use of technology. 

Each group was tasked with two versions of every challenge to work on at the same time. First, participants had to provide the instructions for their car to complete their version of the challenge, like a computer engineer programming a computer or robot. Afterwards, they switched books with their other group member(s) and tried to follow their written instructions, like an onboard computer. Participants should recognize the difficulty and importance of using precise language in coding.

This workshop provides participants with the opportunity to exercise skills that are important in education and future careers. Learning to code helps develop computational thinking skills - learning to think logically, and breaking problems into steps that are easier to solve. Debates provide participants with the opportunity to practice listening and speaking skills. Self-driving cars are an exciting new technology that can drastically change the field of transportation by making roads safer and reduce pollution.

  • Refer to page 13 of the Driving Towards the Future manual for an alternative way to present the ideas if you are unable to show the video “A Ride in the Google Self Driving Car”. 
  • Refer to page 19 of the Driving Towards the Future manual for an alternative way to present the ideas if you are unable to show the video “The social dilemma of self-driving cars”.
  • For Activity 2: Programming the Cars, it may be easier for younger children to work in groups of 4 so that a pair of participants are working together on each playbook.
  • For Activity 2: Programming the Cars, Level 3 may be skipped if you are working with a younger group. Instead, spend more time on Level 2, or you might help them get started by filling in one of the 3 programming blocks together.
    • Another option is to work individually with participants who finish Level 2 early, giving them the instructions for Level 3 so they can complete it while the other participants catch up.
  • For younger audiences or if time is limited, Activity 3: Ethics of Self Driving Cars can be replaced with a brainstorming session where participants design a robot they would like to invent.
  • For Activity 3: Ethics of Self-Driving Cars, if you or the educator are concerned about the topic of car accidents, you could use an alternate question to spur some discussion, such as “If a self-driving car commits an infraction, should the driver be responsible for the fine?”. 
  • Refer to Driving Towards the Future One Pager for instructions on how to facilitate this workshop for a booth event.
  • A Case Study of Autonomous Trucks (Lessons) - in this case study, teachers and students will study how artificial intelligence is affecting the trucking industry as a way to explore how technology and society are related. 
  • The Next Chapter in Automotive Advances (STEM in Context) - learn how new technologies are driving the cars of the future. 
  • For additional tips for facilitating a classroom debate, see the video “How to prepare for a debate” by Noisy Classroom. 

Print

Newman, D. (2019). The Noisy Classroom: Developing Debate and Critical Oracy in Schools. Routledge. ISBN 9781138496927

Attachments

What's Happening?

Coding is a way for us to give instructions or commands to a machine, such as a computer or a robot that makes it do what we want it to do. Computers and robots always do things very accurately – they do exactly what you tell them to do. On the other hand, you have to be able to think through how to describe what you want them to do very precisely and in a language that they understand. This activity provides an opportunity to practice these skills without the use of technology. 

Each group was tasked with two versions of every challenge to work on at the same time. First, participants had to provide the instructions for their car to complete their version of the challenge, like a computer engineer programming a computer or robot. Afterwards, they switched books with their other group member(s) and tried to follow their written instructions, like an onboard computer. Participants should recognize the difficulty and importance of using precise language in coding.

Why Does it Matter?

This workshop provides participants with the opportunity to exercise skills that are important in education and future careers. Learning to code helps develop computational thinking skills - learning to think logically, and breaking problems into steps that are easier to solve. Debates provide participants with the opportunity to practice listening and speaking skills. Self-driving cars are an exciting new technology that can drastically change the field of transportation by making roads safer and reduce pollution.

Investigate Further

  • Refer to page 13 of the Driving Towards the Future manual for an alternative way to present the ideas if you are unable to show the video “A Ride in the Google Self Driving Car”. 
  • Refer to page 19 of the Driving Towards the Future manual for an alternative way to present the ideas if you are unable to show the video “The social dilemma of self-driving cars”.
  • For Activity 2: Programming the Cars, it may be easier for younger children to work in groups of 4 so that a pair of participants are working together on each playbook.
  • For Activity 2: Programming the Cars, Level 3 may be skipped if you are working with a younger group. Instead, spend more time on Level 2, or you might help them get started by filling in one of the 3 programming blocks together.
    • Another option is to work individually with participants who finish Level 2 early, giving them the instructions for Level 3 so they can complete it while the other participants catch up.
  • For younger audiences or if time is limited, Activity 3: Ethics of Self Driving Cars can be replaced with a brainstorming session where participants design a robot they would like to invent.
  • For Activity 3: Ethics of Self-Driving Cars, if you or the educator are concerned about the topic of car accidents, you could use an alternate question to spur some discussion, such as “If a self-driving car commits an infraction, should the driver be responsible for the fine?”. 
  • Refer to Driving Towards the Future One Pager for instructions on how to facilitate this workshop for a booth event.
  • A Case Study of Autonomous Trucks (Lessons) - in this case study, teachers and students will study how artificial intelligence is affecting the trucking industry as a way to explore how technology and society are related. 
  • The Next Chapter in Automotive Advances (STEM in Context) - learn how new technologies are driving the cars of the future. 
  • For additional tips for facilitating a classroom debate, see the video “How to prepare for a debate” by Noisy Classroom. 

Resources

Print

Newman, D. (2019). The Noisy Classroom: Developing Debate and Critical Oracy in Schools. Routledge. ISBN 9781138496927

Attachments