1 of 69

2 of 69

Network: superconference

Login: learn2017

3 of 69

Sneak Peak Inside

Tech Support

4 of 69

The Truth Behind Computational Thinking:

Jon Hamlin

Greater Victoria School District

E-mail: jonhamlin@gmail.com

Twitter: @jonhamlin

Web: jonhamlin.com

CodeBC.ca/Pro-D

You’re already doing it, guaranteed!

5 of 69

Access this presentation:

codebc.ca/pro-d

6 of 69

Shape of the Session

  • Introductions
  • CodeBC - Overview & Exploration
  • Introducing Computational Thinking
  • Activity - Connecting CT to Your Classroom
  • Questions & Discussion
  • Wrap up

7 of 69

Introductions: Find your partner(s)

  1. Organize yourselves in a line from least teaching experience to most.

  • Then fold the line in half e.g. the person with the most experience partners with the person with the least, etc.

8 of 69

Introductions: Find your partner(s)

Introduce yourselves:

  • What / where do you teach?
  • What brought you here today?
  • What do you hope to get from this session?

9 of 69

Introductions: Who is this guy?

10 of 69

Introductions: Who is this guy?

11 of 69

Introductions: Who is this guy?

12 of 69

Introductions: Who is this guy?

13 of 69

Introductions: Who is this guy?

14 of 69

14

15 of 69

Connect existing coding and computational thinking resources to BC’s new curriculum

Created by K-12 BC teachers with our specific needs in mind

16 of 69

The Problem: Where to get started?

17 of 69

The Problem: Where to get started?

18 of 69

Solution: Make Connections

19 of 69

Making Connections

Coding & Computational Thinking Resources

Core Competencies

Cross-Curricular

Skill Levels

Mentorship Map

Ratings System

Online Training

Cost

Platforms

Logins?

20 of 69

CodeBC - Overview

  • Connected to the curriculum
  • 9 key search filters
  • Mentorship map
  • Coding events calendar
  • Online Training
  • Discourse Forum
  • Ratings tools

21 of 69

22 of 69

Time to Explore

CodeBC.ca

23 of 69

Introduction to Computational Thinking

  • Breaking big problems down into a small, more manageable problems (decomposition).
  • Look for patterns and connections to prior learning (patterns & generalisations)
  • Focusing only on the important details, while ignoring irrelevant information (abstraction).
  • Design simple steps or rules to solve each of the smaller problems (algorithmic thinking).

24 of 69

Computational Thinking: Decomposition

Breaking down complex problems into smaller, more manageable parts

  • Reduces complexity
  • Study key areas with greater depth
  • Manage large projects
  • Aids in teamwork & collaboration
  • Focuses on connections

25 of 69

26 of 69

Computational Thinking: Decomposition

27 of 69

Computational Thinking: Decomposition

28 of 69

Computational Thinking: Decomposition

29 of 69

Computational Thinking: Decomposition

30 of 69

Computational Thinking: Decomposition

31 of 69

Cross-Curricular Connections: Decomposition

32 of 69

Computational Thinking: Patterns & Generalisation

  • Once the problem is decomposed,

we examine for patterns

  • Problems are easier to solve when

we can find patterns

  • We can use the same solution

wherever the problem exists

33 of 69

34 of 69

Computational Thinking: Patterns & Generalisation

All cats have eyes, tails, and fur.

35 of 69

What about me?

36 of 69

Computational Thinking: Patterns & Generalisation

Once we describe one cat, we can describe others by following the pattern. (Generalisation)

37 of 69

Computational Thinking: Patterns & Generalisation

38 of 69

Computational Thinking: Patterns & Generalisation

Generalisation: Solving new problems based on previous problems we have solved.

39 of 69

Computational Thinking: Patterns & Generalisation

Finding the area of a rectangle

40 of 69

Computational Thinking: Abstraction

  • Filtering (critical thinking)
  • What details need attention, what can be ignored
  • Reduces complexity

Make something complex easier to grasp by

removing extraneous details

41 of 69

42 of 69

Computational Thinking: Abstraction

Jason has 7 toy cars but his brother Ryan has 8.

Jason has mostly passenger cars and Ryan has race cars.

How many cars do they own in total?

43 of 69

Computational Thinking: Abstraction

Jason has 7 toy cars but his brother Ryan has 8.

Jason has mostly passenger cars and Ryan has race cars.

How many cars do they own in total?

44 of 69

Computational Thinking: Abstraction

Jason has

Jason has mostly

7 + 8 =

45 of 69

Computational Thinking: Abstraction

46 of 69

Computational Thinking: Abstraction

What is the provincial flower of British Columbia?

47 of 69

Computational Thinking: Abstraction

provincial flower of BC?

48 of 69

Computational Thinking: Abstraction

BC flower

49 of 69

Computational Thinking: Abstraction

50 of 69

Computational Thinking: Algorithmic Thinking

  • A precise step by step guide to achieving a specific outcome.
  • Allows solutions to be automated.
  • Improves efficiency for future problem solving.

51 of 69

Computational Thinking: Algorithmic Thinking

52 of 69

Computational Thinking: Algorithmic Thinking

Becomes more helpful

when instructions become

complex.

53 of 69

Computational Thinking: Algorithmic Thinking

54 of 69

55 of 69

Computational Thinking: Algorithmic Thinking

4 Chord

Algorithm

56 of 69

57 of 69

Computational Thinking: Algorithmic Thinking

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30

58 of 69

Computational Thinking: Algorithmic Thinking

3 6 9 12

15

18

59 of 69

Cross-Curricular Connections: Algorithmic Thinking

60 of 69

Computational Thinking: Evaluation

  • Evaluating the effectiveness

of the solution or algorithm.

  • Factoring multiple perspectives within this process.

61 of 69

Computational Thinking: Evaluation

Key factors to determine if solution is a success:

  • Is it easily understood (fully decomposed)?
  • Does it create any unintended consequences?
  • Does it fully solve all aspects of the problem?
  • Is it efficient?

62 of 69

Computational Thinking: Evaluation

63 of 69

Computational Thinking: Evaluation (Debugging)

64 of 69

Grace Hopper: The First Computer Bug

Grace Hopper

1906 - 1992

65 of 69

Grace Hopper: The First Computer Bug

66 of 69

Activity: Connecting CT to YOUR classroom

  • Breaking big problems down into a small, more manageable problems (decomposition).
  • Look for patterns and connections to prior learning (patterns & generalisations)
  • Focusing only on the important details, while ignoring irrelevant information (abstraction).
  • Design simple steps or rules to solve each of the smaller problems (algorithmic thinking).

67 of 69

Questions & Comments

68 of 69

CodeBC: Teachers’ Guide to Computational Thinking

69 of 69

The Truth Behind Computational Thinking

Jon Hamlin

E-mail: jonhamlin@gmail.com

Twitter: @jonhamlin

CodeBC.ca/Pro-D