1 of 96

Welcome to

CS Fundamentals

Intro Workshop

#TeachCode | @TeachCode

Access shared slides:

https://tinyurl.com/wpzbfuws

2 of 96

Meet your facilitators

Like what you hear or see?

TWEET about it!

@TeachCode

@mymindSpark

@TeachCode | #TeachCode

@TeachCode

@TeachCode | #TeachCode

3 of 96

Welcome!

Welcome to the CS Fundamentals Intro Workshop!

You are joining a community of more than 100,000

K-12 teachers who have prepared to teach CS through Code.org’s Professional Learning Program.

#TeachCode | @TeachCode

4 of 96

Workshop Goals

The workshop goals today are to:

  • Proactively prepare to successfully implement CS Fundamentals courses, regardless of prior CS experience.
  • Examine equity in CS and commit to taking steps in establishing equitable and inclusive CS Fundamentals classrooms.

#TeachCode | @TeachCode

5 of 96

Logistics

  • Location of food, restroom, parking lot instructions
  • Read table tents to sit by grade or grade band
  • Create a name tag
  • Point out posters
    • links to enter attendance, access shared slides, and join workshop section
    • Icebreaker (optional)
    • Question Parking Lot
  • Share the Curriculum Guide is used throughout the workshop

#TeachCode | @TeachCode

6 of 96

Norms

Be present.

Make and Take Space.

Seek to Understand.

Take Risks.

Expect and Accept Non-Closure.

@TeachCode | #TeachCode

7 of 96

Agenda Overview

Welcome

Intro to CS and Code.org

Model Lessons

Debugging Lesson

Wrap Up

Focus on Equity

Lesson Planning

Addressing Implementation Barriers

Lunch

Resources and Support

#TeachCode | @TeachCode

8 of 96

What is Code.org?

9 of 96

Welcome to Code.org from Hadi

#TeachCode | @TeachCode

10 of 96

What is Code.org?

Code.org’s vision

“Every student in every school has the opportunity to learn computer science as part of their core K-12 education.”

#TeachCode | @TeachCode

11 of 96

What is Code.org?

Code.org’s Approach to Equity in CS

  • CS is a foundational subject for all 21st century careers.
  • CS in K-12 is an equity issue that must be addressed because discrepancies in access often fall along lines of race, gender, and income level.

#TeachCode | @TeachCode

12 of 96

What is Code.org?

Code.org is part of a larger CS community

working towards equity in CS

  • Code.org collaborates with other equity-minded computer science organization such as
    • Microsoft, NCWIT, CSforAll and the CSTA which as incorporated equity focused elements into its Standards for CS Teachers
    • Your regional partner hosting this workshop in support of K-12 CS education

#TeachCode | @TeachCode

13 of 96

What is Computer Science?

14 of 96

What is Computer Science?

Prompt

Share a word or phrase to describe

what computer science means to you.

#TeachCode | @TeachCode

15 of 96

Name Journal Response

Melissa

Example 1

Becky

Example 2

Kristen

Programming and coding

Creativity, problem solving, critical thinking, coding

Blair

Coding creating, critical thinking, problem solving, application, step by step, foundational

Sarah

Coding and finance creative foundational

Joe

Critical thinking and coding Problem solving, Inclusive, Foundational, Creative, Marketable,

Kiera

Programming Critical Thinking

Laura 1

Money

Lucrative

Jamie

Math

Problem Solving

Jess

Programming

Problem solving, essential

Denise/Chris

Math coding

Creative problem solving

Helping others daily tasks

Julie

Programming

Creative thinking

16 of 96

Name Journal Response

Melissa

Example 1

Becky

Example 2

Aimee

programming/PLANNING, PROBLEM SOLVING, CRITICAL THINKING

Jackie

Thinking critically

Stella

Coding

Problem solving, Critical thinking, creativity

Allison

Coding

Problem solving, creativity, critical thinking

Nedra

Programming/Problem solving

Colleen

Coding problem solving, critical thinking, algorithms, daily activities,

Opportunities,

Patrick

Planning/patience

Problem solving/ creativity

Laura

Programming / Coding

Problem solving, critical thinking, creativity, needed skills

Andrea

Coding

Critical thinking/problem solving

17 of 96

Name Journal Response

Melissa

Example 1

Becky

Example 2

Heather

Programing problem solving creativity, foundational, college and career readiness

Mark

Programming, problem solving, creativity, etc.

Liz

Coding Jobs, problem solving, real life application

Nikki

Coding

Creativity, problem solving, following steps

Kris

Programming

Problem solver, make life easier/more efficient

Peggy

Programming

Peggy

Problem Solving and following step by step directions

18 of 96

Name Journal Response

Melissa

Example 1

Becky

Example 2

Donnie

Using computers to solve problems or reach a goal? Example -moving an object across the screen

Donnie

Problem solving and logical reasoning in creative ways

Cindy

problem solving/puzzles

Cindy

Needed skills

Laura

Programming a series of steps

Michael

Creativity, strategic thinking.

Sara

Programming

Charissa

The process of it all.Stuff I am not good at.

19 of 96

20 of 96

Emojis

21 of 96

Kahoot!

22 of 96

What’s happening in your state?

#TeachCode | @TeachCode

23 of 96

What is Computer Science?

“The study of computers and algorithmic processes, including their principles, their hardware and software designs, their implementation, and their impact on society.”

- Computer Science Teacher Association (CSTA)

Let’s breakdown this definition.

#TeachCode | @TeachCode

24 of 96

Overview of CS

Computer Science (CS) is learning about:

  • Algorithms - step-by-step processes to complete a task, i.e. instructions
    • For example, brushing your teeth, playing a game, opening a file
  • Hardware such as a keyboard, mouse, or monitor
  • Software such as Microsoft Windows or Android
  • Design and use of hardware and software and their impact on society
    • For example, apps for social change or artificial intelligence

#TeachCode | @TeachCode

25 of 96

Overview of CS

CS is about creativity

    • CS is not technology, like the cell phone we use. CS is a process that can create technology.
    • CS teaches students to create new technology instead of only being consumers of technology.

CS is about problem solving

    • CS helps students think differently about solving problems in any context.
    • CS uses a problem solving process that can be applied to any field of study and to any problem.

CS uses code, CS is not only coding

    • Code is a tool similar to how arithmetic is a tool for math and words are a tool for language.
    • CS teaches students to break down big, ambiguous problems into smaller chunks. Recognizing what’s important and what needs to be solved first are critical thinking skills that are valuable in ANY context.

#TeachCode | @TeachCode

26 of 96

We don’t want a generation of scrollers...

we want a generation of creators!

#TeachCode | @TeachCode

27 of 96

What is Computer Science?

Discussion Prompts

What new words or phrases come to your mind based on the Overview of CS?

Add any additional words or phrases in a different color to slide 19-21.

#TeachCode | @TeachCode

28 of 96

What is Computer Science?

When you think of who should teach CS, who do you think of? Why?

Please write your response in your Blue Code.org journal.

#TeachCode | @TeachCode

29 of 96

What is CS Fundamentals?

30 of 96

First, a short video

@TeachCode | #TeachCode

31 of 96

Overview of CS Fundamentals

Course A

Kindergarten

Course B

1st Grade

Course C

2nd Grade

Course D

3rd Grade

Course E

4th Grade

Course F

5th Grade

Hour of Code introduces students to CS.

CS Fundamentals courses support students in building CS knowledge and skills.

#TeachCode | @TeachCode

32 of 96

CS Fundamentals

  • Provides courses for each K-5 grade level for both pre-readers and readers

  • Is designed with K12 Computer Science Framework practices and CSTA K-12 standards

  • Includes cross-curricular extension activities mapped to ELA/Math CCSS and Science NGSS

#TeachCode | @TeachCode

33 of 96

CS Fundamentals Courses

Mix of unplugged (offline, kinesthetic) and plugged (online, programming)

Course length increases as students get older

Courses do not assume any prior knowledge in computer science

Grade-level appropriate literacy and math skills in mind

@TeachCode | #TeachCode

34 of 96

Overview of Courses

  • Courses are organized by concept chunks which are the big ideas for that course and make it easy to see at-a-glance what topics are included in a course.
  • Courses include “unplugged” (off a computer) and “plugged” (on a computer) activities to help students learn CS concepts.
  • Some courses include:
    • Text-to-speech to support pre-readers.
    • Prediction puzzles to support discovery and critical thinking.
    • Built-in tools for students to create games and animations.

#TeachCode | @TeachCode

35 of 96

10 minute break!

We’ll start back at 1:38

36 of 96

Model Lessons

37 of 96

Overview of Model Lessons: Role Play

  • Facilitators model lessons wearing the “teacher hat.”
  • Participants engage with the model lessons wearing “learner hats.”
    • Consider role playing as your students and keep in mind:
      • Your students’ perspectives
      • Types of questions they would ask
      • How they would engage with the lessons

#TeachCode | @TeachCode

38 of 96

Model Lessons Context: Course C

  • Model lessons are part of Course C, designed for students in second grade
  • Two separate lessons are modeled as a single lesson, but lessons are each intended to be taught separately.
  • Model lessons are shortened to focus on main activities.

#TeachCode | @TeachCode

39 of 96

Context-setting/Skill Building Plugged/Unplugged

#TeachCode | @TeachCode

40 of 96

Transition to Model Lessons Role Play

Let’s get our “hats” on and go!

#TeachCode | @TeachCode

41 of 96

Lesson 14: The Big Event

Warm Up

Let’s see if we can find a pattern here:

  • When you flip a switch, the lights turn on.
  • When you tap on a phone, an app starts.
  • When the alarm clock goes off, you get out of bed.
  • When _______________, ________________.

event

action

LEARNER HAT ON

#TeachCode | @TeachCode

42 of 96

Lesson 14: The Big Event

Our new vocabulary word today is event.

Events are actions that cause something to happen.

LEARNER HAT ON

#TeachCode | @TeachCode

43 of 96

#TeachCode | @TeachCode

44 of 96

Event

An event is an

action that

causes something to happen.

#TeachCode | @TeachCode

45 of 96

Dance Rehearsal

  1. First we will practice our moves.
  2. Then we will see which button makes us move.
  3. Everytime we push a button, it is an it is an “event” that lets them know what they are expected to start doing next.

Activity

Here’s our Event Controller.

When I press a button, you will…

#TeachCode | @TeachCode

46 of 96

High Clap

#TeachCode | @TeachCode

47 of 96

Dab

#TeachCode | @TeachCode

48 of 96

kick

#TeachCode | @TeachCode

49 of 96

Body Roll

#TeachCode | @TeachCode

50 of 96

This Or That

#TeachCode | @TeachCode

51 of 96

Dance Party

Let’s create a

together!

Green Button -> Clap High

Orange Button -> Dab

Teal Button -> Kick

Purple Button -> Roll

Pink Button -> This or That

\

#TeachCode | @TeachCode

52 of 96

Create a

together!

Green Button -> Clap High

Orange Button -> Dab

Teal Button -> Kick

Purple Button -> Roll

Pink Button -> This or That

Grade 4

#TeachCode | @TeachCode

53 of 96

Create a

together!

Green Button -> Clap High

Orange Button -> Dab

Teal Button -> Kick

Purple Button -> Roll

Pink Button -> This or That

Spec Ed.

#TeachCode | @TeachCode

54 of 96

Create a

together!

Green Button -> Clap High

Orange Button -> Dab

Teal Button -> Kick

Purple Button -> Roll

Pink Button -> This or That

Grade 3

#TeachCode | @TeachCode

55 of 96

Create a

together!

Green Button -> Clap High

Orange Button -> Dab

Teal Button -> Kick

Purple Button -> Roll

Pink Button -> This or That

GRADE !

R

R

L

L

R

L

#TeachCode | @TeachCode

56 of 96

Create a

together!

Green Button -> Clap High

Orange Button -> Dab

Teal Button -> Kick

Purple Button -> Roll

Pink Button -> This or That

#TeachCode | @TeachCode

57 of 96

Create a

together!

Green Button -> Clap High

Orange Button -> Dab

Teal Button -> Kick

Purple Button -> Roll

Pink Button -> This or That

#TeachCode | @TeachCode

58 of 96

Dance Party

Create a

together!

Green Button -> Clap High

Orange Button -> Dab

Teal Button -> Kick

Purple Button -> Roll

Pink Button -> This or That

By Grade 2!!

#TeachCode | @TeachCode

59 of 96

Lesson 14: The Big Event

Wrap Up

What did we learn today?

What are some examples of events?

LEARNER HAT ON

#TeachCode | @TeachCode

60 of 96

Transition

Transition from Context-setting Lesson �(Hands on - Concrete)

to

Skill-building Lesson

(Digital)

#TeachCode | @TeachCode

61 of 96

Lesson 12: Build a Flappy Game

Please join my session:

LEARNER HAT ON

Join a section enter class code: VBJTJN

#TeachCode | @TeachCode

62 of 96

Lesson 12: Build a Flappy Game

LEARNER HAT ON

Scroll down - a lot

#TeachCode | @TeachCode

63 of 96

Lesson 12: Build a Flappy Game

LEARNER HAT ON

  1. Navigate to the code.org website
  2. Go to Course C, Lesson 11

#TeachCode | @TeachCode

64 of 96

Lesson 12: Build a Flappy Game

LEARNER HAT ON

  • Navigate to the code.org website
  • Go to Course C, Lesson 12

#TeachCode | @TeachCode

65 of 96

Lesson 12: Build a Flappy Game

Warm Up

Review: We “programmed” or created instructions for button click events.

What program or instructions did we use for the button click events?

LEARNER HAT ON

#TeachCode | @TeachCode

66 of 96

Lesson 12: Build a Flappy Game

Activity

  1. Watch a video about coding a game.
  2. Take a look at a puzzle and make a prediction.
  3. Work on Lesson 12: Levels 2 - 11.

LEARNER HAT ON

#TeachCode | @TeachCode

67 of 96

Lesson 12: Build a Flappy Game

LEARNER HAT ON

#TeachCode | @TeachCode

68 of 96

Lesson 12: Build a Flappy Game

1

2

3

4

5

6

7

Preview of Lesson 15 in Code Studio

LEARNER HAT ON

#TeachCode | @TeachCode

69 of 96

Lesson 12: Build a Flappy Game

Turn to a partner:

What do you predict will happen when Flappy Bird runs into something like the ground or an obstacle?

LEARNER HAT ON

#TeachCode | @TeachCode

70 of 96

Lesson 12: Build a Flappy Game

Let’s find out what happens to Flappy Bird!

Work on Lesson 12: Levels 2 - 11

LEARNER HAT ON

#TeachCode | @TeachCode

71 of 96

Lesson 12: Build a Flappy Game

Wrap Up

Today’s lesson was about events

In your journal

  • Describe why events are important in coding?
  • Tell what your favorite part of either event lesson and why you enjoyed it.

LEARNER HAT ON

#TeachCode | @TeachCode

72 of 96

CS Teaching Practices

73 of 96

Whole Group Share Out

Prompts

What background knowledge was needed to engage with the lessons’ activities?

What was the role of the teacher during the lessons?

#TeachCode | @TeachCode

74 of 96

Learning CS

CS teaching practices modeled:

  • Role of the Teacher: Acting as the lead learner, “I may not know the answer, but I know that together we can figure it out.”
  • Discovery and Inquiry: Students explore concepts and build their own understanding through lesson activities.
  • The Classroom Community: Lessons encourage active learning and communication.

#TeachCode | @TeachCode

75 of 96

Learning CS

Turn to page 4 in the Curriculum Guide to read more about each.

  • Role of the Teacher
    • When were there opportunities for the teacher to be a lead learner during the lessons?
  • Discovery and Inquiry
    • When were there opportunities for students to make sense of the Context during the lessons?
  • The Classroom Community
    • When were there opportunities for active learning during either lesson?
    • When were there opportunities to create an inclusive classroom in which all students felt they could share and listen to ideas?

#TeachCode | @TeachCode

76 of 96

Whole Group Share Out

  • Role of the Teacher
    • When were there opportunities for the teacher to be a lead learner during the lessons?
  • Discovery and Inquiry
    • When were there opportunities for students to make sense of the Context during the lessons?
  • The Classroom Community
    • When were there opportunities for active learning (communicating or creating with other students) during the lessons?

#TeachCode | @TeachCode

77 of 96

Teaching CS Equitably

Prompts

How do the CS teaching practices help establish an inclusive CS Fundamentals classroom in which all students are engaged and learning CS?

What responsibility does a teacher have in establishing inclusion in CS when using the following CS teaching practices?

Role of the Teacher

Discovery and Learning

The Classroom Community

#TeachCode | @TeachCode

78 of 96

Debugging

79 of 96

Debugging and Student Practices

  • Debugging is essential to CS and builds on the following student practices*:
    • Problem Solving
    • Persistence
    • Creativity
    • Collaboration
    • Communication

*Student Practices found on page 27 of the Curriculum Guide.

#TeachCode | @TeachCode

80 of 96

Debugging: Role Play

  • Facilitators model debugging wearing the “teacher hat.”
  • Participants engage with debugging wearing “learner hats.”
    • Consider role playing as your students and keep in mind:
      • Your students’ perspectives
      • Types of questions they would ask
      • How they would engage in the lessons

#TeachCode | @TeachCode

81 of 96

Debugging Context

  • The debugging lesson is
    • Part of Course C designed for second graders
    • A skill-building lesson
    • Shortened and modified to support understanding and approaching debugging (refer to the lesson plan for the full lesson)
    • An introduction to pair programming - CS strategy built-in for students to engage in.

#TeachCode | @TeachCode

82 of 96

Transition to Debugging Role Play

Let’s get our “hats” on and go!

#TeachCode | @TeachCode

83 of 96

Lesson 5: Debugging in Maze

Warm Up

How do you fix something that isn’t working?

Do you follow specific steps?

LEARNER HAT ON

#TeachCode | @TeachCode

84 of 96

Lesson 5: Debugging in Maze

Our vocabulary words today are

Bug: something that is wrong with the code, an error.

Debugging: Finding and fixing “bugs” or errors in the code to fix.

Persistence: This is one of our student practices. We need to try things many different ways, many different times, and not give up.

LEARNER HAT ON

#TeachCode | @TeachCode

85 of 96

Lesson 5: Debugging in Maze

LEARNER HAT ON

#TeachCode | @TeachCode

86 of 96

Lesson 5: Debugging in Maze

Activity

  • Watch a video about pair programming.
  • Watch a video about debugging.
  • Work with a partner on Lesson 5: Levels 2 - 3.

LEARNER HAT ON

#TeachCode | @TeachCode

87 of 96

Model Lesson: D.2 - Introduction to Online Puzzles

1) Turn on Pair Programming

**Select partner and click PAIR!

2) Designate Roles

3) Pairs share one device

4) Work on puzzles

5) Switch roles often 2-3 min.

6) Work together until time is up!

88 of 96

Lesson 5: Debugging in Maze

LEARNER HAT ON

#TeachCode | @TeachCode

89 of 96

Lesson 4: Debugging in Maze

Let’s debug and help out Scrat!

Work on Lesson 4: Levels 2 - 3

LEARNER HAT ON

#TeachCode | @TeachCode

90 of 96

Lesson 5: Debugging in Maze

Check-in

  • How are you persistent as you work with the code?
  • How are you feeling when you are persistent with the code?

LEARNER HAT ON

#TeachCode | @TeachCode

91 of 96

Lesson 5: Debugging Maze

Wrap Up

Today’s lesson was about debugging.

In your journal, draw and write about a bug you found and how you debugged it.

LEARNER HAT ON

#TeachCode | @TeachCode

92 of 96

Debrief

Pair programming is a technique in which two programmers work together at one computer.

  • The “driver” writes code on the screen while the “navigator” directs the design and setup of the code (tell the “driver” what to write).
  • The two programmers switch roles often.

To learn more about pair programming go to:

  • Page 20 of the Curriculum Guide
  • Code.org’s support article, “How does pair programming on Code.org work?” [link]

#TeachCode | @TeachCode

93 of 96

Debugging Process

Use the Debugging Process Guide on page 28 of the Curriculum Guide

Partner Talk Prompts

How did your approach to debugging during the lesson compare to the Debugging Process Guide?

How might you modify the debugging process shown in the guide to meet the needs of your students?

#TeachCode | @TeachCode

94 of 96

Whole Group Share Out

Prompts

What modifications to the debugging process, if any, did you suggest to meet the needs of your students?

How does debugging as a process support inclusion where all students are engaged and learning CS?

#TeachCode | @TeachCode

95 of 96

Question Parking Lot

Question:

Answer:

Question:

Answer:

Question:

Answer:

Question:

Answer:

Question:

Answer:

#TeachCode | @TeachCode

96 of 96

Thank you!

@TeachCode | #TeachCode