Upload
eleanor-cook
View
212
Download
0
Embed Size (px)
Citation preview
1
Managing diversity in introductory programming classes
Using Logo as a diagnostic tool
John Poulton
North East Wales Institute
2
Introduction to Programming The one module in our Level 1 curriculum that
the students have the most difficulty complain about the most consistently
a "weed out" class where only the highly successful will endure
a "make or break" course which discourages all but the best students
3
Logo? Full-featured computer programming
language derived from LISP A language for learning A tool to teach the process of learning
and thinking An environment where students assume
the role of teacher
4
Logo As a teacher, they must:
understand the knowledge to be taught plan an approach to impart this knowledge break the knowledge into small, understandable
chunks clearly communicate the knowledge Establish this new knowledge as the foundation for
future learning Be aware of and build on knowledge that the learner
already has Respond to the learner's (computer's)
misunderstandings and errors
5
How did we use Logo As an introduction to the concept of
programming, and on the thinking processes that Logo encourages
To attempt to discover programming aptitude
Used during induction week 65 BSc , 37 HND students (2001/02) BSc 3 hrs + 1 hr test HND 4 hrs + 1 hr test
6
How did we use Logo Developed tutorial and series of exercises Simple tasks which require fairly short
programming solutions Encouraged the use of various language
constructs Loops functions parameter passing
The tasks examined attention to detail, logical ability and capability at comprehending and following instructions
7
Sequencesforward 50 right 90 forward 50right 90forward 50right 90forward 50right 90
8
Iterationrepeat 4 [forward 50 right 90]
9
Procedures to squarerepeat 4 [forward 50 right 90]end
10
Procedures
You could draw a flag:
forward 60squareback 60
11
Further Iteration You could make a circle of squares:
repeat 12[square right 30]
12
Procedures to house
squareforward 50right 90triangle
end to triangle
repeat 3 [forward 50 left 120]end
13
Passing Values into Proceduresto square :size
repeat 4 [forward :size right 90]end
square 10
square 20 etc
14
Recursionto design
clearscreenright 30polyspi 5 120
end
to polyspi :size :angleif :size > 205 [stop]
forward :size right :anglepolyspi :size+5 :angle+.12
end
15
Results
0%
10%
20%
30%
40%
50%
60%
70%
80%
90%
100%
1 4 7 10 13 16 19 22 25 28 31 34 37 40 43 46 49 52
Logo
C
16
Conclusions Logo
Useful diagnostic tool Useful tool for teaching programming Useful tool to observe how students think
Improved retention & progression? Helped But so did extra tutorial support
Future work develop materials further Introduce problem solving module utilising LOGO
17
Logo sites MSWLogo is available free from
http://softronix.com Useful Site run by the Computer Supported
Didactics Working Group at the University of Vienna
http://www.eurologo.org/ Guido van Rossum's
Computer Programming For Everybody
http://www.python.org/doc/essays/cp4e.html