Top Banner
HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts www.planforcomputing.org.uk
24

HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

Dec 16, 2015

Download

Documents

Kory Wilkinson
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

HIGHER CS STANDARD ALGORITHMSPart 1- Ensuring fuller understanding of the basic concepts

www.planforcomputing.org.uk

Page 2: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

Who am I?

Principal Teacher of Computing at Crieff High School

CAS Scotland committee member

National Project Officer since August 2013

Page 3: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

Session OverviewImportance of students developing a precise understanding

- The problem with intuition- The hidden mechanism concept- Does this just apply to programming?

Ways to assess and help secure pupils understanding of the basic concepts

- Peer instruction- Identifying and describing hidden mechanisms

Page 4: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

Current teaching of standard algorithms

What approaches do you currently use or are planning to use?

What approaches do you find work well?

What would you like to improve?

www.planforcomputing.org.uk

Page 5: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

Importance of developing mechanistic reasoning• Relying on intuition vs understanding• Concept of a hidden mechanism• Does this just apply to programming?

Page 6: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

Problems of prior pupil experience

IntuitionReliance on the other persons experience and ability to deal with ambiguity.

Precision doesn’t really matter

Reliance on copying other examples that might be similar.

“The computer doesn’t like me and is being awkward”

UnderstandingRealisation that a computer has no prior experience and struggles with ambiguity.

Precision is crucial

Choosing features based on what you want the computer to do.

“I haven’t correctly described the process”

VsMagic Reason

Page 7: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

What kind of understanding do they need?

Awareness of structure and how different elements relate to one another

Consistent model of how a process description is carried out by a computer or other person

www.planforcomputing.org.uk

Static view of a particular instant in time that’s probably easier for novices

Dynamic view of a series of actions unfolding over time and probably harder for novices

Page 8: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

Does this just apply to programming?

NoComputing Science is an information structure and process orientated disciplineModern UI’s allow a try different things until it works approach

www.planforcomputing.org.uk

Page 9: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

Peer instruction to test for faulty mental

models• Brief overview of PI• PI questions for the audience• Research evidence of its effectiveness

Page 10: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

Peer Instruction• Technique originally developed in Physics

by Eric Mazur at Harvard university• Way of assessing whether novices really

understand concepts requiring a precise understanding

• Based on carefully designed multiple choice questions with structured discussion and voting

Page 11: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

PI in a secondary school context

Before

Pupils have worked with the concepts in class or at home.

Individual

• Pupils read the question and choose an answer

• Vote takes place

Group

• Pupils discuss what answer they chose and why

• Vote takes place

Class

• Teacher facilitated discussion

• Vote takes place

Correct

Answer

• Teacher reveals the correct answer

• Teacher explains why it’s correct

Page 12: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

The variables angel and egyptian contain 1.7 and 2.0 respectively, which represent their height. What is written

out…?

IF angel > egyptian THEN SEND "Egyptian is taller" TO DISPLAYELSE SEND "Angel is taller" TO DISPLAYEND IF

A. Egyptian is tallerB. Angel is tallerC. Egyptian is taller Angel is tallerD. <nothing is output>

Page 13: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

Consider what this code does when metalColour is blue, red, or green…

IF metalColour == "blue" THEN SEND "Cold" TO DISPLAYELSE IF metalColour == "red" THEN SEND "Hot!" TO DISPLAY ELSE SEND "Try again!" TO DISPLAY END IFEND IFWhich options are true?

A. When metalColour is blue, Cold displayedB. When metalColour is red, Hot! displayedC. When metalColour is blue, both Cold AND Try again!

displayedD. When metalColour is green, nothing happens

Page 14: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

What is written out…?

SET n TO 4WHILE n > 0 LOOP

SET n TO n – 1END WHILESEND n TO DISPLAY

A. -1

B. 0

C. 1

D. 2

E. 3

F. 4

Page 15: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

How many times is Hello written out?

SET i TO 0WHILE i <= 5 DO SEND "Hello" TO DISPLAY SET i TO i + 1END WHILE

A: 4 B: 5 C: 6 D: 7 E: <other>

Page 16: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

How many times is Hello written out?

SET i TO 10

REPEAT i TIMES SET i TO i – 2 SEND "Hello" TO DISPLAYEND REPEAT

A: 10 B: 8 C: 6 D: 4 E: 2 F: 0

Page 17: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

PI vs teacher explanation

Statistically significant effect

Twice as effective as a good teacher explanation

Successfully used in Physics, Maths and Computing Science

Develops better sense of self efficacy particular amongst girls

Page 18: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

Identifying and describing mechanisms

• The importance of CS speak• Identifying mechanisms in a simple

piece of code• Activity involving identifying and

describing mechanisms

Page 19: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

Why the language mattersWithout CS speak you have

- no way of clearly identifying the mechanisms

- difficulty connecting the problem description to the code or features you need for the process description

Forced to rely on showing them lots of problem descriptions and the code or steps to solve them.

Page 20: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

CS Speak provides• A common language to describe their

understanding.• Helps to transfer learning to another

programming language.• Helps transfer from one example to similar

problems.

However they need opportunities to practice using the language!

Page 21: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

conditional repetition

complex condition

logical comparisons

output

Identifying and describing mechanisms

assignment to a variable

assignment to a variable

input

SET password TO “”

SET attempts TO 0

REPEAT

SEND “Please enter the correct password” TO DISPLAY

RECEIVE password FROM (STRING) KEYBOARD

UNTIL password = “12345” OR attempts > 3

Page 22: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

Identifying and describing mechanisms

SET lotto_player TO [“”, ””, ””, ””]

FOR player FROM 0 TO 2 DO

SEND “Please enter players name” TO DISPLAY

RECEIVE name FROM (STRING) KEYBOARD

SET lotto_player[player] TO name

END FOR

selected = pick_random( 0, 2)

SEND lotto_player[selected] & “has won!” TO DISPLAY

www.planforcomputing.org.uk

Page 23: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

Key Challenges

Code writing before code

comprehension makes this

more difficult for novices

Need to understand the

hidden mechanisms

Computational constructs are tightly linked

Page 24: HIGHER CS STANDARD ALGORITHMS Part 1- Ensuring fuller understanding of the basic concepts .

www.planforcomputing.org.uk

Questions