Dr Quintin Cutt's keynote from the CAS Scotland conference 2012.
Quintin has researched and practised programming education for 15 years, involved in UK, US and Australasian projects. He has explored many instructional designs, endeavouring to maximise the value of face-to-face teaching using technology and peer-based learning. He is closely involved with schools, having led CS Inside in Scotland and now running a successful Undergraduate Ambassadors Scheme course.
He is assisting the Scottish Qualifications Authority in the design of new qualifications, in particular developing rigorous examination formats. This is feeding into CPD and exemplification efforts led by the Royal Society of Edinburgh, for which Quintin is a project board member.
Quintin Cutts - Teaching and Learning to Program: Too much doing and not enough understanding
1. Teaching & Learning to Program
Too much doing, not enough understanding
Quintin Cutts
University of Glasgow
CASS Conference 2012
2. Core issues
Is programming learnable by all?
Are our typical pedagogies "fit for purpose"?
Apprenticeship -- Acculturation
CASS Conference 2012
3. Mindset – attitude to learning – Carol Dweck
• Growth or Fixed attitude
– Do I believe my intelligence & abilities are fixed…
– … or, can they grow with practice and perseverance?
• 20-yr rsch program demonstrates
– There is a level of innate ability, and an unknown potential for growth
– It is easy to switch between the two attitudes
• So many consequences of this simple idea. For example:
– "Are the intelligence/abilities of my students fixed?"
• Is there something about teaching CS that fosters Fixed mindset?
– Mindset study in Glasgow Uni – mindset messages produced 10% improvement
– Neo-Piagetian view -> learning in stages – we assume too much too soon
– Learning Edge Momentum – captures the stepwise nature of CS learning
– CS Principles pilots in US – core understandings assumed but not in place
CASS Conference 2012
4. Increasing evidence that programming
is learnable by all – just that we
haven't worked out how to teach it!
CASS Conference 2012
6. Brucie's Generation Game
• Complex skill
– programming
• Explained briefly and with a
demonstration
– lecture / lesson / book / video
• Contestant left to have a go pretty
much on his/her own
– set straight to problem solving, usually
very few simpler staged tasks first
• Final product usually a terrible mess
– all too often the same in programming
• Sound at all familiar?
CASS Conference 2012
7. Minimal-guidance considered harmful
• Kirschner,Sweller & Clarke
• Find little evidence for the success of
– un-scaffolded problem-based learning
– emerges every decade or so under a new name
• Argue using cognitive architectures research
– short term memory (STM) – 7 +/- 2 items remembered
– learning things (committing items to long-term memory)
requires rehearsal, requiring STM
– problem-solving very intense on short-term memory for
novices – no long-term knowledge schemas yet
– Since STM jammed, no learning takes place
• They claim worked examples are the way to go…
CASS Conference 2012
8. We move to problem solving too soon
CASS Conference 2012
9. Outcomes vs. Assessment
• Premise 1
– We want learners to understand programming
concepts and skills deeply, to properly equip them
for life-long involvement with computation
• Premise 2
– We assess a learner’s understanding by measuring
the quality of the artifacts they produce
– Hence, we must assume that delivery of an
artifact == understanding
CASS Conference 2012
10. Who produced the artifact?
• The learner
– Great. Our assumption may well be correct.
– Although, monkeys and typewriters?
• (my concern with drag-and-drop etc)
• Books / the web / a wizard
– Boiler-plate copying is common-place
• Teacher / tutor / friend
– Often in one ear, out the other
– But at least the code is working
CASS Conference 2012
11. We use a potentially invalid
assessment mechanism
CASS Conference 2012
12. Apprenticeship
e.g. a tailor
• Initial easy but meaningful tasks
– e.g. ironing Could we emphasise reading and explanation over writing?
– observe and acculturate (legitimate peripheral participation)
• Given smaller tasks Do we know what the small tasks are?
– not a whole suit, but a button hole here, cutting there
– setting foundational skills in place
• Master is continually observing, ensuring
– good decision-making How can we capture process tasks?
– correct application of the various processes
– quality of intermediate results
• Over time, the subtle knowledge necessary for high skill
tasks assimilated We need a truly progressive curriculum CASS Conference 2012
13. Key goal of early Computing Education
Acculturation
into
the ways computing folk see, understand and
solve problems
Ah ha! An overarching definition of
Computational Thinking?
CASS Conference 2012
14. Apprenticeship & industrial teaching …
attending to the process
• Engage students in questioning and discussion around
typical problems
– One-on-one is expensive – can we get peers discussing and
explaining?
• Relevant pedagogies:
– Peer Instruction, Flip Teaching, The Khan Academy
• Exemplar course
– Beth Simon's (and my!) CSE3 at UCSD – 1000 students / yr
– Also piloting in schools now
– Alice-based programming using Peer Instruction
– Practice in working with & seeing problems/code as we do
CASS Conference 2012
15. Exploratory Lecture Lab Exam
Homework Q
U
I
Z
1) Individual Vote on MCQ PEER INSTRUCTION
2) Group Discussion (fixed 3 person)
Tutors actively engage groups in justifying/talking
Students practice using the language of the subject
3) Group Vote (consensus required)
4) Class-wide Discussion
Led by Students First – Explain WRONG answers
Final Cognitive Modeling by Instructor (the Master)
CASS Conference 2012
16. Apprenticeship – the small tasks
What are the button-holes, the cutting, the hemming of
programming?
• Analysed 133 PI questions from our intro course
• Fine-grained
– PI questions can't be large
– We focussed on numerous individual aspects of how we think
about programs and programming
• Analysis led to a taxonomy, organised by
– Abstraction levels
– Transitions between these levels
• e.g. Question stem at one level, answers at another
– Mechanism (knowing how something works) and Rationale
(knowing why something was done a particular way)
CASS Conference 2012
19. 1-2 English -> CS Speak
Suppose there are customers waiting in line at the store.
You want to serve each customer one at a time, so each
one should walk to the counter one at a time. How could
you do this?
A. Use a DoTogether tile
B. Use a DoInOrder tile
C. Use a ForAllTogether tile
D. Use a ForAllInOrder tile.
CASS Conference 2012
20. Scottish schools programming
• New curriculum
– potentially good for programming
• Scottish Qualifications Agency
– no prescribed language for all schools
– so how to write an exam paper presenting code?
• ** Haggis **
– Pseudo-code specification for learning and teaching
– SQA exams to use a version of this
• Encouraged adoption of the PI question taxonomy in
exam paper setting
CASS Conference 2012
21. Suggestions to try
Reduce emphasis on problem solving early on
More worked examples moving to faded worked
examples (steps left out, to be answered)
Get students to articulate understanding often, and
give feedback on it
Flip your classroom!
CASS Conference 2012
22. Summary
Do we believe all our students can get there?
Are we teaching doing or thinking?
"Thinking as we do" should become explicit in
our course designs
CASS Conference 2012
23. Questions? Discussion?
[1] Mazur. Farewell, Lecture? Science. Vol 323: 50-51, 2009.
[2] Crouch, Mazur. Peer Instruction: Ten years of experience. Am. J.
Phys. 69 (9) 2001.
[3] Caldwell. Clickers in the Large Classroom: Current Research and
Best-Practice Tips. CBE-Life Sciences Education, 6 (1): 9-
20, 2007.
[4] Hrepic, Zollman, Rebello. Students’ and Experts’ Understanding of
Lecture. Journal of Science Education and Technology, 16(3):
213-224, 2007.
[5] Roediger & Karpicke, Test-Enhanced Learning : Taking Memory
Tests Improves Long-Term Retention. Psychological Science 17:
p249-255, 2006
[6] Karpicke & Blunt, Retrieval Practice Produces More Learning than
Elaborative Studying with Concept Mapping. Science Express, p1-
5, January 2011
[7] Teasley Talking about Reasoning: How Important is the Peer in
Peer Collaboration? In Discourse, Tools and
Reasoning, Springer, 1993.
[8] Craig, Chi, & VanLehn, Improving Classroom Learning by
CASS Conference 2012
Collaboratively Observing Human Tutoring Videos While Problem
24. Questions? Discussion?
[10] Smith et al., Why Peer Discussion Improves Student Performance on In-Class
Concept Questions, Science 323, pp122-124, January 2009.
[11] Draper, Catalytic Assessment: understanding how MCQs and EVS can foster deep
learning, British J. Educational Technology, 40(2) pp285-293, 2009.
[12] Russell, Using an Electronic Voting System to Enhance Learning and
Teaching, Engineering Education, 3(2), 58-65, 2008.
[13] Simon, Cutts, et al., Experience Report: Peer Instruction in Introductory
Computing, SIGCSE,2010, pp 341-345, 2010.
[14]Cutts, Q., Cutts, E., Draper, S., O'Donnell, P. and Saffrey, P., "Manipulating mindset
to positively influence introductory programming performance", Proceedings of the
41st ACM SIGCSE symposium, (2010), pp 431-435.
[15] Cutts, Q., Esper, S. and Simon, B. (2011) "Computing as the 4th “R”: A General
Education Approach to Computing Education" Proceedings of ICER'11, 7th
International Computing Education Research Workshop, August
2011, Providence, Rhode Island, USA. pp 133-138.
[16] Simon, B. and Cutts, Q. (2012) “Peer Instruction: A Teaching Method to Foster
Deep Understanding” Comm. ACM 55(2), pp 27-29.
[17] Cutts, Q., Esper, S., Fecho, M., Foster, S. & Simon, B. (2012) “The Abstraction
Transition Taxonomy: Developing Desired Learning Outcomes through the Lens of
Situated Cognition. In proceedings of ICER 12, the 8th International Computing
Education Research Conference, Auckland, New Zealand, Sept. 2012.
[18]Kirschner, P., Sweller, J. and Clark, R. 2006. Why Minimal Guidance during
Instruction Does Not Work: An Analysis of the Failure of
Constructivist, Discovery, Problem-Based, Experiential and Inquiry-Based Teaching.
Educational Psychologist, 41(2), 75-86.
[19]Robins, A. 2010. Learning edge momentum: a new account of outcomes in CS1.
Computer Science Education, 20(1), 37-71.
[20]Neo-Piagetian Theory of Cognitive Development for Programming – contact Ray
Lister, University of Technology, Sydney, Australia. CASS Conference 2012
Editor's Notes
It's what we do in programming teaching, of course
In this talk, let's address primarily the level of understanding.Understanding programming concepts deeply helps develop the ability to think computationally, to have a computer's mindset. Incredibly valuable when using all modern technology.Also foundation for more programming and further computing science education
Everything to do with programming (and even computing?) is captured in the Transitions. Our culture is about taking problems and seeing the broad solution structure / the tools we'll use, and then developing a detailed solution. It's about having a solution, realising it doesn't do quite what we want, and working backwards to understand why – to see the problems with the general solution structure, to understand how to fix that or adjust the problem