1 of 59

Rock CS 2022

Friday 3rd June 2022

9am Colorado time

4pm UK time

2 of 59

Differentiating instruction

There are many different instructional approaches and different views about which is best.

How do you decide what to use for your different students?

How do you differentiate and scaffold the learning?

Computer Science Student-Centered Instructional Continuum

3 of 59

Introductions

Jane Waite, CS Education Research,

Queen Mary University of London

On twitter @janewaite #CSEdResearchBookClub &

#CSEdResearchStudentNetwork

Facebook CAS Research Working Group

Now at Raspberry Pi Foundation Senior Research Scientist jane.waite@raspberrypifoundation.org

Christine Liebe, Ph.D., Colorado School of Mines

cliebe@mines.edu

Postdoctoral Fellow, CS Education Research

C-START: https://cstart.mines.edu/

National Science Foundation grant CNS

#1543231

4 of 59

Christine Liebe, Ph.D.

  • Ph.D. Education: Curriculum, Instruction, Assessment - focus on CS Instruction
  • Licensed K-12 teacher: Elementary, Secondary Science & Language Arts
  • Taught Education courses in higher ed since 2010
  • Taught CS kids camps, elementary Scratch, leading 7 sections of a Python lab, teaching CS pre-service methods course
  • CS Educational Research projects - K-12 CS teacher surveys, CS assessments, section placement in CS 101 courses, computational thinking
  • Research Associate, Adjunct Professor, Computer Science, Colorado School of Mines

5 of 59

Jane Waite

A bit about me…

  • Developer in industry for 20 years, primary teacher for 10 years,
  • Worked at, and study at, Queen Mary University of London,
  • Now work as the senior research scientist at the Raspberry Pi Computing Education Research Centre with University of Cambridge
  • Teacher training, community support, research last 5 years
  • Barefoot, cs4fn, Hello World and many other resources and PD
  • Research publications include on Pedagogy, Microbit, Design,PRIMM, Semantic Waves, Industry, learning AI etc
  • Recently wrote a review of research on pedagogy for computing for Royal Society and from this...

1

6 of 59

CS-SCIC slides :

https://bit.ly/22cs-scic

If you want to run the same session with your local chapter

here is the workshop plan with timings.

7 of 59

Questions and ideas for improvement of the session

Question or idea

Response

If you have a question - pop it in here and we will answer either as we go along or at the end.

8 of 59

Objectives of this session

  1. Understand each category of the CS Instructional Continuum
  2. Deepen your understanding of scaffolding and differentiation
  3. Gain ideas of pedagogy patterns
  4. Start to understand more about fading scaffolding

A

A

A

A

A

A

A

A

A

RA

R

R

R

R

R

R

R

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

R

R

R

R

R

A

A

A

A

R

R

A

R

R

A

RA

RA

9 of 59

Let’s go TEAM!

Please add your thoughts/links/resources in our “class notes” as we examine each CS-SCIC instructional category.

Crowdsourcing methods of Differentiation

10 of 59

Your name

Most scaffolded

Least scaffolded

Gwynn

3

13

15a

7

5

9

1

11

Debby

13

11

15a

7

9

5

1

3

Lindy

11

13

3

5

7

1

9

15a

Michelle

3

5

1

7

9

15a

13

11

Erin

5

15a

7

1

3

13

9

11

Sarah

5

3

15a

1

7

13

9

11

Pick a row and change to your name (can be a pseudonym) , and add the numbers of the activities in the table from most scaffolded to least.

Group A

Change this code (remix) with help cards.

1

Copy this code (online or paper based).

3

Unplugged activity which explains how variables work

Activity and Teacher explains

5

Code annotation

(teacher provides example)

7

Students in pairs support each others as explore different types of loops in scratch

9

Tinkering (no goal, no constraints)

11

Read this code predict what will it do (code is the scaffold)

13

Writing pseudocode for teacher directed project

15 a

11 of 59

Most scaffolded

Least scaffolded

Randy

4

6

14

10

Tara

2

10

8

16

6

14

12

4

Jeff S

2

8

6

12

16

14

4

10

Wendy

16

2

12

6

4

8

10

14

Kim

2

16

4

6

10

8

12

14

Jen

2

16

4

8

6

12

10

14

Pick a row and change to your name, and add the numbers of the activities in the table from most scaffolded to least.

Group B

Teacher modelling coding

Live coding

2

Fix this buggy code, students help each other

4

Write this code for this design, help cards available

6

Design and make a program (teacher specified goal, help cards and class example)

8

Students independently research about binary using internet

10

Explore these 3 commands. What do they do?

12

Design and make a program (open goal no example, no support)

14

Watch a video explaining about a concept.

16

12 of 59

Most scaffolded

Least scaffolded

Jane

Tracy

3

5

7

15

1

9

11

Dillon

3

5

15

7

13

1

9

11

Bill

5

3

15

1

7

9

13

11

Penny

15

1

7

5

3

9

13

11

5

3

7

15

1

9

13

11

Pick a row and change to your name (can be a pseudonym) , and add the numbers of the activities in the table from most scaffolded to least.

Group A

Change this code (remix) with help cards.

1

Copy this code (online or paper based).

3

Unplugged activity which explains how variables work

Activity and Teacher explains

5

Code annotation

(teacher provides example)

7

Students in pairs support each others as explore different types of loops in scratch

9

Tinkering (no goal, no constraints)

11

Read this code predict what will it do (code is the scaffold)

13

Writing pseudocode for teacher directed project

15 a

Terri

13 of 59

Most scaffolded

Least scaffolded

Michelle

2

16

10

6

12

8

4

14

Kathy

2

6

8

4

12

16

10

14

Jessica

2

8

6

4

12

16

10

14

Pick a row and change to your name, and add the numbers of the activities in the table from most scaffolded to least.

Group B

Teacher modelling coding

Live coding

2

Fix this buggy code, students help each other

4

Write this code for this design, help cards available

6

Design and make a program (teacher specified goal, help cards and class example)

8

Students independently research about binary using internet

10

Explore these 3 commands. What do they do?

12

Design and make a program (open goal no example, no support)

14

Watch a video explaining about a concept.

16

14 of 59

If you finish

  • look at how the other group have ordered their set of activities. Pop your order in the chat window
  • In the next 2 slides add some extra activities and tell us where they would go in the activity order

15 of 59

Add further activities, where would they

fit?

Most scaffolded

Least scaffolded

Field Trip

Pre-Built Tutorials

Develop a few lines of code with description

Do a project with your own idea using a template

“Follow-the-leader” type unplugged games

Group A

Project with goals, design up to student

Modify an existing project

16 of 59

Add further activities, where would they

fit?

Most scaffolded

Least scaffolded

“Follow-the-leader” type unplugged games

Group B

Coding exercises where concept is first demonstrated by teacher

17 of 59

CS-SCIC - Computer Science Student Centred Instructional Curriculum

13

18 of 59

Copy code

Shared coding

Targeted tasks

Project based

Inquiry based

Tinkering

Time ----------->

What would your continuum graph look like?

A pedagogy pattern.

Example 1

24

19 of 59

Copy code

Shared coding

Targeted tasks

Project based

Inquiry based

Tinkering

Time ----------->

What would your continuum graph look like?

A pedagogy pattern.

Example 2

25

20 of 59

Copy code

Shared coding

Targeted tasks

Project based

Inquiry based

Tinkering

Time ----------->

PRIMM perhaps?

Create

26

Use

Modify

21 of 59

Copy code

Shared coding

Targeted tasks

Project based

Inquiry based

Tinkering

Time ----------->

PRIMM perhaps?

Make

PRIM

26

Predict Run Investigate Modify Make

Sentance and Waite (2017)

22 of 59

Forms/ mechanisms of differentiating

Different

  • learning objectives
  • expectations

Resources (and experiences)

  • Activity
  • Work/Helpsheets, reference materials
  • Language
  • Previous lessons
  • Pattern of activities (pedagogy patterns)

Other support

  • Teacher (or other adult)
  • Peers

More knowledgeable other (Vygotsky, 1978)

Tools, language, symbols (Vygotsky, 1978)

3

1 Usually use

3 Never use

1

1

1

1

1

1

1

1

1

1

1

3

3

3

3

3

3

3

3

3

3

3

3

1

1

1

1

1

1

1

1

1

1

1

1

1

1

1

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2

2 Occasionally use

Copy Code

Shared Coding

Targeted Tasks

Project-

based

Inquiry-

based

Tinkering

23 of 59

Other forms of differentiation

Combine project & tinkering so that they do their own topic within a project

Language - different support

Based on student interests

Pair programming

Not putting them in a box at the beginning of the year. Allow students to evolve and change interests throughout the year

Flipped classroom,

In the field learning

I let students tell me how they want to modify the task at hand. Sometimes students say “could I change it to this?

24 of 59

How do you adjust differentiation over time?

  1. What instructional approach do you start with, do you follow a pedagogy pattern?
  2. What resources, experiences and other support do you fade/remove?

Resources (and experiences)

  • Activity
  • Helpsheets, reference materials
  • Language
  • Previous lessons
  • Pattern of activities (pedagogy patterns)

Other support

  • Teacher (or other adult)
  • Peers

23

25 of 59

Which of these would you like a bit more explanation about?

13

26 of 59

PRIMM

(a sequence of learning activities including targeted tasks)

Predict Run Investigate Modify Make

Code Reading

Levels of Abstraction

Block Model

Use Modify Make

Adapted from Sentance and Waite (2017)

27 of 59

PRIMM- Predict

  1. On a piece of paper (or electronically)

Straight away quickly read the code … summarise what you think the purpose of the code is (guess if not sure don’t worry).

I think the purpose of the code is…

(Please add to the chat window but don’t send until I say so!!)

The drawing will be a shape

16

28 of 59

PRIMM- Predict

  • Straight away quickly read the code … summarise what you think the purpose of the code is (guess if not sure don’t worry).

16

I think the purpose of the code is...to draw a shape with coloured sides that change I think it. I am not sure if there will be 10 shapes or 6 shapes. Or what shape it will be.

29 of 59

PRIMM- Predict

  • On a piece of paper (or electronically)

Straight away quickly read the code … summarise what you think the purpose of the code is (guess if not sure don’t worry).

I think the purpose of the code is…

Presentation/ Activity

2. Trace the code, for each line ..

(verbally in pairs)

The first block will ….

16

30 of 59

PRIMM- Predict

This first block will ..start the program when the user clicks the flag

This block will stop the pen drawing (maybe in case of rerunning?)

This block will move the “pen” somewhere - but I don’t know where

This block changes the pen to thicker or thinner I don’t know what 3 means

16

This block will clear the screen

I don’t know what this block is for

This block changes the pen colour I don’t know what 45 means

Now the pen is down and ready to draw

Repeat 10 times (an outside loop) - draw 10 hexagons?

Repeat 6 times - ooo draw a hexagon

This block changes the pen colour by 5 - maybe makes it darker?

Draw a short line of 50 step then turn 60 degrees

No idea what this 40 steps and turn do

2. Trace the code, for each line ..

(verbally in pairs)

The first block will ….

Start program

31 of 59

RUN

32 of 59

PRIMM - investigate

Presentation

19

Q1a) This program uses repetition.

There are two repeats in the program.

Can you find them and draw around them?

Q1 b) Do you know what these types of loops are called?

Q1 c) We are going to refer to the loops as the outer loop

and the inner loop. Can you label these on the program?

Q1 d) How many times does the inner loop repeat?

Q1 e) What shape does the inner loop draw?

Q1 f) How many times does the outer loop repeat?

33 of 59

PRIMM - investigate

Presentation

19

34 of 59

35 of 59

36 of 59

37 of 59

Finding PRIMM - resources

38 of 59

PRIMM

(a sequence of learning activities including targeted tasks)

Predict Run Investigate Modify Make

Code Reading

Levels of Abstraction

Block Model

Use Modify Make

Adapted from Sentance and Waite (2017)

39 of 59

Objectives of this session

  • Understand each category of the CS Instructional Continuum
  • Deepen your understanding of scaffolding and differentiation
  • Gain ideas of pedagogy patterns
  • Start to understand more about fading scaffolding

A

A

A

A

A

A

A

A

A

R

R

R

R

R

R

R

R

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

G

40 of 59

Share your take-aways in the chat!

Questions/Answers

28

41 of 59

Coming soon….

Assessing CS-SCIC instructional categories!

42 of 59

References (Jane)

Armoni, M. (2013). On Teaching Abstraction in Computer Science to Novices. Journal of Computers in Mathematics and Science Teaching, 32(3), 265–284.

Clear, T. (2012). The hermeneutics of program comprehension: a ’holey quilt’ theory. ACM Inroads, 3(2), 6–7.

Cutts, Q., Esper, S., Fecho, M., Foster, S. R., & Simon, B. (2012). The abstraction transition taxonomy: developing desired learning outcomes through the lens of situated cognition. Proceedings of the 9th Annual International Conference on International Computing Education Research (pp. 63–70). ACM.

Garneli, V., Giannakos, M. N., & Chorianopoulos, K. (2015). Computing education in K-12 schools: A review of the literature. Global Engineering Education Conference (EDUCON), 2015 IEEE (pp. 543–551). IEEE.

Grover, Pea, & Cooper. (2015). Designing for deeper learning in a blended computer science course for middle school students. Computer Science Education, 25(2), 199–237.

Grover, S., & Basu, S. (2017). Measuring Student Learning in Introductory Block-Based Programming: Examining Misconceptions of Loops, Variables, and Boolean Logic. Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education (pp. 267–272). ACM.

Hansen, A., Hansen, E., Dwyer, H., Harlow, D., & Franklin, D. (2016). Differentiating for Diversity: Using Universal Design for Learning in Elementary Computer Science Education. Proceedings of the 47th ACM Technical Symposium on Computing Science Education (pp. 376–381). ACM.

Izu, C.,Schulte, C., Aggarwal, A., Cutts, C., Duran, R., Gutica, M., Heinemann, B., Kraemer, E., Lonati, M., Mirolo, C., and Weeda, R. 2019. Fostering Program Comprehension in Novice Programmers - Learning Activities and Learning Trajectories. In Proceedings of the Working Group Reports on Innovation and Technology in Computer Science Education (ITiCSE-WGR ’19). Association for Computing Machinery, New York, NY, USA, 27–52. DOI:https://doi.org/10.1145/3344429.3372501

Kafai, Y.B. & Burke, Q., 2015. Constructionist gaming: Understanding the benefits of making games for learning. Educational psychologist, 50(4), pp.313–334.

Lee, I., Martin, F., Denner, J., Coulter, B., Allan, W., Erickson, J., Malyn-Smith, J., et al. (2011). Computational thinking for youth in practice. ACM Inroads, 2(1), 32–37.

Laurillard, D. (2013). Teaching as a design science: Building pedagogical patterns for learning and technology. Routledge.

Perrenet, J., & Kaasenbrood, E. (2006). Levels of abstraction in students’ understanding of the concept of algorithm: the qualitative perspective. ACM SIGCSE Bulletin, 38(3), 270–274.

Sentance, S. & Waite, J., (2017) PRIMM: Exploring pedagogical approaches for teaching text-based programming in school. In Proceedings of the 12th Workshop on Primary and Secondary Computing Education. ACM, pp. 113–114. DOI: 10.1145/3137065.3137084

Schulte, C. (2008). Block Model: an educational model of program comprehension as a tool for a scholarly approach to teaching. Proceedings of the Fourth international Workshop on Computing Education Research (pp. 149–160). ACM.

Vygotsky, L. S. (1978). Mind in society: The development of higher psychological processes. Massachusetts: Harvard University Press.

Waite, J., (2017) Pedagogy in teaching Computer Science in schools: A Literature Review. (After The Reboot: computing education in UK Schools). The Royal Society. Available at: https://royalsociety.org/-/media/policy/projects/computing-education/literature-review-pedagogy-in-teaching.pdf

Waite, J., Curzon, P., Marsh, W. & Sentance. S. (2016) Abstraction and common classroom activities, In WiPSCE ’16: Proceedings of the 11th Workshop in Primary and Secondary Computing Education, pp112-113, October, ACM. DOI: 10.1145/2978249.2978272

Waite, J., Curzon, P., Sentance, S., Marsh, W. & Hawden-Bennett, A. (2018) Abstraction in action: K-5 teachers’ uses of levels of abstraction, particularly the design level, in teaching programming, International Journal of Computer Science Education in Schools. 2(1): 14-40. January. DOI: 10.21585/ijcses.v2i1.23

Waite, J., (2018) A continuum of scaffolding: from copying code to tinkering. Available at: https://blogs.kcl.ac.uk/cser/2018/01/05/a-continuum-of-scaffolding/.

29

43 of 59

References (Christine)

Ames, M. G. (2019). The charisma machine: The life, death, and legacy of One Laptop per Child. MIT Press.

Bers, M.U., Flannery, L.P., Kazakoff, E.R, & Sullivan, A. (2014) Computational thinking and tinkering: Exploration of an early childhood robotics curriculum, Computers & Education, 72, 145-157.

Dochshanov, A., & Tramonti, M. (2018, March). Re-making Classroom Borders with TINKERING Approach. In Conference proceedings (p. 150). libreriauniversitaria. it Edizioni.

Fessakis, G., Komis, V., Mavroudi, E., & Prantsoudi, S. (2018). Exploring the scope and the conceptualization of computational thinking at the K-12 classroom level curriculum. In Computational Thinking in the STEM Disciplines (pp. 181-212). Springer, Cham.

Fuller, U., Johnson, C. G., Ahoniemi, T., Cukierman, D., Hernán-Losada, I., Jackova, J., ... & Thompson, E. (2007). Developing a computer science-specific learning taxonomy. ACM SIGCSE Bulletin, 39(4), 152-170.

Papert, S. (1980). Mindstorms: Computers, children, and powerful ideas. NY: Basic Books.

Schwartz, A. (2016). Unlocking The Clubhouse Women In Computing. Computing, 1, 4.

Vygotsky, L. S. (2012). Thought and language. MIT press.

Xie, B., Loksa, D., Nelson, G. L., Davidson, M. J., Dong, D., Kwik, H., ... & Ko, A. J. (2019). A theory of instruction for introductory programming skills. Computer Science Education, 29(2-3), 205-253.

29

44 of 59

Things to change/do

  1. Replace PRIMM with Diana Laurillard learning types or more targeted tasks or LOA activity (done but I came up with a scaffolding activity and crowd source activity that may be more appropriate - lets discuss)
  2. Start with graphs (done)
  3. Tidy shared activities, sort LO, do bitlys (done) https://tinyurl.com/CS-SCICScafPres
  4. Update the workshop plan and work our timings and who does what - FOR SUNDAY - Christine if you arrive before me - maybe you can update the workshop plan ;)
  5. https://docs.google.com/document/d/1PYGcDx5UfLjJdCUtFvK3TnkQiLDTEPX_/edit
  6. Update references

Hi Christine - On Sunday we can run through and decide whether we need to add in Laurillard or LOA levels - I have

  1. THE BIG THING WE NEED TO DO IS CUT DOWN AS ITS ONLY 2:20 to 3:05 - 45 MINUTES
  2. cleared out the delegate stuff from before
  3. done some new LO on blue at start and green backgrounds at the end - focus pedagogy patterns / scaffolding / fading
  4. added extra “scaffolding type text” to the sorting activity
  5. moved the graphs from the end to earlier and added in some more detail (slide 22 etc)
  6. added a slide and activity on types of scaffolding (ref Vygostky) yellow background
  7. created a crowd sourcing activity that is similar to our crowd source differentiation but crowd source scaffolding. Grey background
  8. removed PRIMM and just put a simple list of targeted tasks - slide 29
  9. Completed all my Hopin activities except the training and I have not updated our slide deck to conform to the slide template the provide except for adding the Welcome slide (what do you think?)
  10. I HAVE submitted OUR LINK (as the tiny url https://tinyurl.com/CS-SCICScafPres
  11. Added a fading activity (but it feels a bit week - pink background)

At the end of the slides - so not in the main slides

  • I have added in Laurillards learning types and an activity that can be done where teachers create a learning type graph - see example rocket. (But this is one slide per person so is hard to manage in large groups.
  • I have also at the end added the LOA naming activity -

I did have Learning types and LOA in the main bit - but it was getting toooo complicated I thought and we would run out of time ----

45 of 59

Copy Code

46 of 59

Presentation slide

9

47 of 59

Shared Coding

22b

48 of 59

13

49 of 59

Targeted tasks

Predict what this code will do

Follow these unplugged instructions

Match this design to the code

Add subgoal labels to this code

Fix this buggy code

Plant three bugs for your friends to find

Explore these three commands

Parsons Problems e.g. Runestone

50 of 59

Project-based learning

51 of 59

PBL - when, with whom, how often, why???

PBL: https://microbit.org/get-started/user-guide/python/

Elementary: Python and micro:bits

MS: Python and micro:bits

HS: Python and micro:bits

52 of 59

Inquiry-based learning

53 of 59

Scenario Elementary: How does the turtle get to the end of the maze?

Children’s questions:

54 of 59

Scenario MS: How can the code make the soccer ball roll down the field?

Student Questions:

55 of 59

Scenario HS: How do pressing the keys on the keyboard turn into letters on the screen?

56 of 59

Questions about?????

57 of 59

Tinkering

58 of 59

Tethys + Tufts DevTech

59 of 59

Tinkering Continuum

Creating background knowledge

Developing innovations