mark dixon1 student-lecturer interactions during first year computer programming tutorials: mark...
TRANSCRIPT
Mark Dixon 1
Student-Lecturer Interactions during First Year Computer Programming
Tutorials:
Mark DixonSchool of Computing & Mathematics
University of Plymouth, UK
Towards a model to help guide new lecturers
Mark Dixon 2
Introduction - Background• programming widely recognised
difficult to learn and teach
• recent student numbers increase– doubled 2 years ago
• PhD student teaching increased– need to maintain teaching quality
Introduction
Method
Model
Results
Conclusions
Mark Dixon 3
Introduction - Background• problem
– (students come with impression that computers are intelligent)
• cause– GCSE syllabus– Marketing– Films
Introduction
Method
Model
Results
Conclusions
Mark Dixon 4
Introduction - Aims• model of lab-tutorial
student-lecturer interaction– experienced lecturer behaviour?– student behaviour?– hazards, beneficial, inhibiting?
• passed onto new lecturers
• literature: limited observations of student-lecturer interactions in lab tutorials
Introduction
Method
Model
Results
Conclusions
Mark Dixon 5
Introduction - Objectives• How do we interact with students?
– how do we get inside their heads?– need explicit (evidence-based) model
• How do we pass this on to new lecturers?– need explicit strategy
• Teaching and Learning Courses– good for generic Learning Theory– very little / no discipline specific
Introduction
Method
Model
Results
Conclusions
Mark Dixon 6
Method: Overview• Develop initial model
– single lecturer's anecdotal experiences (over 15 years)
• Observational Study– participant observation &
audio recordings– during stage 1 programming
tutorials (in labs)– transcription of audio– QDA to identify
recurrent / key themes
Introduction
Method
Model
Results
Conclusions
Mark Dixon 7
Method: Observation Protocol1. Short Briefing (Investigators,
Aims, Process, Ethics)2. Consent Form to all students
indicate willingness -> fill in form3. Conduct tutorial normally
(location, duration, attendance, resources, content)
4. Students proceed with exercisesAsk for assistanceLecturer responds(if consent then audio record)
Introduction
Method
Model
Results
Conclusions
Mark Dixon 8
Initial Model: Questions, Understanding, Process
• provide student with minimum assistance, which enables them to solve problems themselves– by asking them questions
• focus on:– increasing student understanding,
not completing tasks / exercises– processes used to develop solutions,
not solutions themselves
Introduction
Method
Model
Results
Conclusions
Mark Dixon 9
Initial Model: Broken Code Panic• Students
– try code– code does not work– panic: delete code (BCP)– ask for help
• Lecturer– needs to see code that does not work– gives clue to student understanding
Introduction
Method
Model
Results
Conclusions
Mark Dixon 10
Initial Model: Error Message Panic• Students
– type in code– run code– error message appears– panic: frantically click to get rid of
error message (EMP)– ask for help
• Lecturer– don't panic– read message (cute fluffy friends)
Introduction
Method
Model
Results
Conclusions
Mark Dixon 11
Initial Model: Difficult Conceptsvar x;var y;
x = 3;x = 6;y = x + 2
L: What is x? S: It gives error, x can't be 3 and
6 at the same time.• Misunderstanding stuck
Introduction
Method
Model
Results
Conclusions
Mark Dixon 12
Initial Model: What vs. How S: Can you explain this code? L: Yes, it puts a zero in each
element of the array
• May give false impression– impressionist painting not sequential
• Domain vs. Program level [Pennington]
Introduction
Method
Model
Results
Conclusions
Mark Dixon 13
Initial Model: Computer Intelligence• Students
– perceive computer as intelligent– approach programming like
conversation with another person
– type code without understanding– believe computer understands– 5 lines not working, add 400
• Lecturer– reinforce idea of
mechanistic (stupid) computer
Introduction
Method
Model
Results
Conclusions
Mark Dixon 14
Initial Model: Task Focus S: Can you help me? L: Yes, what are you stuck on? S: How do you get it to … ? L: OK, which bit of code does …? S: [no response] L: OK, let's have a look at your code …
how does this work? S: [no response]
• Seemed to expect solution• Code seemed quite advanced, confusing,• Student could not explain code.• Eventually, admitted - did not understand it.• They typed it in, but other tutor guided them
(effectively told them what to write).
Introduction
Method
Model
Results
Conclusions
Mark Dixon 15
Initial Model: Cold Reading• Cold Reading
L: 'What is the value of k [Boolean]?'
S: 'True' [quick, confident]
L: 'Are you sure?'
S: 'False, I knew that!' [quick, defensive]
• student guessing, reading lecturer's response (words, tone, expression)
• inaccurate impression of student understanding
Introduction
Method
Model
Results
Conclusions
Mark Dixon 16
Initial Model: Guidelines• Lecturer
– do not touchstudent's keyboard or mouse(no 'little bit of magic')
– view as diagnostic process (identify conceptual sticking point) feedback
– different example for explanationsleave student to apply understanding to original problem
– don't let them use you as a resourceget (help) them to do it
Introduction
Method
Model
Results
Conclusions
Mark Dixon 17
Initial Model: Time Consuming• Once practiced
– 1:1 easy
• Very time consuming– difficult with large groups
• Risk – other students wait, get frustrated, leave / stop attending
Introduction
Method
Model
Results
Conclusions
Mark Dixon 18
Results: Direct Observation 1• Saw student struggling• offered help• they accepted.• Asked how much they understood• they said just the html.• Asked did they attend the lecture – no they didn’t.• Lecturer reacted neutrally to this.• They actually understood more than this
They had created another image, and copied the Main procedure (with the movement code) – changing it for the new image tag id.This did not work as there were now two Main procedures.
• Lecturer informed them that 'you can’t have two procedures with the same name, but you can add more code to the existing Main procedure – join them together'.
• Student did this – it worked
Introduction
Method
Model
Results
Conclusions
Mark Dixon 19
Results: Direct Observation 2S: Asks for help regarding SQL LIKE statementL1: Gets their SQL reference guide and looks it up, then
tells student what to typeS: What does the percent mean?L1: It's a wildcard character.S: Looks very confusedL1: Asks for help from L2L2: Percent means any characters. For example d% picks
things starting with d, and %z picks things ending with z.What would pick things starting with a and ending is s?
S: a%s [with confidence in their voices]
• L1 looks up, rather than Student
• 'wildcard character' technically correct, but did not help student
• L2 lay explanation with examples, and question
Introduction
Method
Model
Results
Conclusions
Mark Dixon 20
Results: Audio Transcripts– Session 1 (5 conversations)
(10m 23s, 2m 34s, 3m 45s, 3m 56s, 26m 3s).
– Session 2 (9 conversations) (6m 51s, 1m 44s, 41s, 1m 10s, 1m 33s, 11m 5s, 4m 44s, 3m 8s, 6m 49s).
– Session 3 (10 conversations) (3m 6s, 2m 9s, 1m, 11m 27s, 3m 16s, 50s, 1m 2s, 21m 30s, 1m 19s, 5m 28s).
– total 24 participants (out of 110)
Introduction
Method
Model
Results
Conclusions
Mark Dixon 21
Results: Audio Transcript 1S: 'but that doesn't work'
L: 'OK, when you say "It doesn't work"'
S: 'It runs, there are no errors, but there isn't a new record'
L: 'OK, right, how can we pause the program and see it internally'
S: 'debugger'
L: 'Yeah'
• Lecturer guiding learning by questioning
Introduction
Method
Model
Results
Conclusions
Mark Dixon 22
Conclusions / Literature• Strong History of Similar Approach
– Socratic Method(learning by questioning)
– Galileo Galilei (1564 - 1642)'You cannot teach a man anything;you can only help him find it within himself'
– Student-Centred Learning– Constructivism
• Assimilation vs. Accommodation
• limited concrete details– how this translates into programming tutorial
student-lecturer interactions– new lecturers
Introduction
Method
Model
Results
Conclusions
Mark Dixon 23
Further work
• Looking for participantsIntroduction
Method
Model
Results
Conclusions
Mark Dixon 24
Driving, IT, and Computing
Driver Mechanic Designer
User IT Support Developeruse
technologyinstall + fixtechnology
create + buildinvent
technology
SchoolICT GCSE/A level
UniversityComputing Degrees
use car fix car invent car