Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Learning and teaching introductory programming in
higher education: strategies and tools
António José Mendes
Centro de Informática e Sistemas
da Universidade de Coimbra
Research Groups
Adaptive Computing
Communications and Telemati...
Centro de Informática e Sistemas
da Universidade de Coimbra
Cognitive and Media Systems
Knowledge & Intelligent Systems
La...
Introductory
Programming
Learning
Create an
algorithm
to solve a
problem
Difficult
Find and
understand
errors
Misconceptio...
Learn
programming is
hard
High
abstraction
level
Problem
solving based
Programming
languages
syntaxes
Professional
IDEs
Student’s
backgrounds
and attitudes
Focus on
memorization
Heterogeneous
groups
Low
motivation to
“fight”
“Minimum
effort l...
Teaching
methods and
conditions
Class sizes
Traditional
classes have
low impact in
problem solving
abilities
Difficult to
...
Coimbra
contributions
Studies on
different related
issues
Tools to support
students
Pedagogical
strategies
Tools to
suppor...
Tools to
support
students
Animation based
program
simulation tools
Program
Control
Output
AnimationProgram
Control
Output
...
Tools to
support
students
Game based
tools
Tools to
support
professors
Studies on
different related
issues
Learning to program – difficulties and
solutions. ICEE 2007
Mathematics and programmin...
Pedagogical
strategies
Bloom’s taxonomy based approach to
learn basic programming. EDMEDIA 2009
A context for programming ...
Pedagogical
strategies
Context: Introductory Programming course included in the
Design and Multimedia Bachelor at Universi...
Future trends
?
Adaptive environments
Improved pedagogical strategies
Effective diagnosis and feedback tools
Representatio...
Future trends
?
Adaptive environments
Improved pedagogical strategies
Effective diagnosis tools
Representation metaphors
…...
Upcoming SlideShare
Loading in …5
×

VII Jornadas eMadrid "Education in exponential times". "Learning and teaching introductory programming in Higher Education, strategies and tools". Antonio Mendes. Universidad de Coimbra. 03/06/2017.

87 views

Published on

VII Jornadas eMadrid "Education in exponential times". "Learning and teaching introductory programming in Higher Education, strategies and tools". Antonio Mendes. Universidad de Coimbra. 03/06/2017.

Published in: Education
  • Be the first to comment

  • Be the first to like this

VII Jornadas eMadrid "Education in exponential times". "Learning and teaching introductory programming in Higher Education, strategies and tools". Antonio Mendes. Universidad de Coimbra. 03/06/2017.

  1. 1. Learning and teaching introductory programming in higher education: strategies and tools António José Mendes
  2. 2. Centro de Informática e Sistemas da Universidade de Coimbra Research Groups Adaptive Computing Communications and Telematics Evolutionary and Complex Systems Information Systems Software and Systems Engineering Cognitive and Media Systems Researchers 70 PhDs 90 PhD students 30 MSc students
  3. 3. Centro de Informática e Sistemas da Universidade de Coimbra Cognitive and Media Systems Knowledge & Intelligent Systems Lab Computational Creativity and Digital Media Lab Ambience Inteligence Lab Educational Technology Lab Computer Science Educational Research Distance Education Simulation based learning environments
  4. 4. Introductory Programming Learning Create an algorithm to solve a problem Difficult Find and understand errors Misconceptions Very different learning rhythms Low success rates Complaints from other courses teachers Why Learn programming is hard Student’s backgrounds and attitudes Teaching methods and conditions
  5. 5. Learn programming is hard High abstraction level Problem solving based Programming languages syntaxes Professional IDEs
  6. 6. Student’s backgrounds and attitudes Focus on memorization Heterogeneous groups Low motivation to “fight” “Minimum effort law” Errors not seen as learning opportunities Study strategies
  7. 7. Teaching methods and conditions Class sizes Traditional classes have low impact in problem solving abilities Difficult to understand student’s difficulties How to keep students motivated
  8. 8. Coimbra contributions Studies on different related issues Tools to support students Pedagogical strategies Tools to support professors
  9. 9. Tools to support students Animation based program simulation tools Program Control Output AnimationProgram Control Output Animation Useful to average and good students Less useful to weak students
  10. 10. Tools to support students Game based tools
  11. 11. Tools to support professors
  12. 12. Studies on different related issues Learning to program – difficulties and solutions. ICEE 2007 Mathematics and programming: some studies. CompSysTech 2008 A study on student’s characteristics and programming learning. EDMEDIA 2008 A study on student performance in first year CS courses. ITiCSE 2010 A study on students’ behaviors and attitudes towards learning to program. ITiCSE 2012 A teacher's view about introductory programming teaching and learning: difficulties, strategies and motivations. FIE 2014 Main ideas: Student self confidence and motivation is fundamental Individual support is necessary for weaker students Student-teacher communication is very important Important to change student’s attitudes towards programming learning Motivated teachers can make a big difference
  13. 13. Pedagogical strategies Bloom’s taxonomy based approach to learn basic programming. EDMEDIA 2009 A context for programming learning based on research communities. EDUCON 2010 A strategy to improve student’s motivation levels in programming courses. FIE 2010 Student reflexions as an influence in the dynamics of an introductory programming course. FIE 2011 A taxonomy of exercises to support individual learning paths in initial programming learning. FIE 2013 Main ideas: No traditional lectures with a lot of students, but classes with 24 students, with the same professor, integrating theoretical and practical components Early identification of weaker students, giving them special attention, trying to improve their motivation Communication in class and through written student reflections Class context (language, problems, …) adequate to student’s characteristics
  14. 14. Pedagogical strategies Context: Introductory Programming course included in the Design and Multimedia Bachelor at University of Coimbra After 2010/2011 5h T+P classes in small groups (24 students) Processing Animation and graphics based problems Specific course Big emphasis in student – professor communication Until 2010/2011 2h lecture + 4h Labs Python Conventional exercises, mostly “number based” Joint with Informatics students Results 0 10 20 30 40 50 60 70 80 2008/09 2009/10 2010/11 2011/12 2012/13 2013/14 2014/15 2015/16 2016/17
  15. 15. Future trends ? Adaptive environments Improved pedagogical strategies Effective diagnosis and feedback tools Representation metaphors Brain Computer Interfaces … Any idea that may contribute to effectively support introductory programming learning, especially for weaker students
  16. 16. Future trends ? Adaptive environments Improved pedagogical strategies Effective diagnosis tools Representation metaphors … Any idea that may contribute to effectively support introductory programming learning, especially by weaker students Thank you for your attention toze@dei.uc.pt

×