Pedagogy Practices for Programming in Computer Education

MQF Level: 7

ECTS Value: 5 ECTS

Self Study Hours: 60

Contact Hours: 25

Assessment Hours: 40


Overall Objectives and Outcomes

Computer programming presents itself as an essential skill in the 21st century. As a response to this, national Computing and ICT curricula cover a substantial element of programming that aims at preparing students for a wide range of computer science-related professions. The pedagogy of programming differs from mainstream education pedagogy on many levels and calls for new policies and frameworks that highlight the importance of providing opportunities for learners to acquire knowledge, understanding, and skills specifically associated with programming. This module aims to explore the theories that lay the foundation for pedagogies of programming. It also seeks to explore different pedagogies from a number of different practical perspectives, with a view to synthesise and evaluate these approaches through planning and practical application in relation to areas of the programming syllabus.

By the end of this programme, participants should be able to:


a. Develop a critical understanding of the educational theories that underpin methodological frameworks for the teaching of programming;

b. Analyse various pedagogical approaches in the light of a range of practical implications for classroom practice;

c. Design and implement programming modules by applying emerging principles of best practices in teaching;

d. Design assessment strategies that complement programming pedagogies.

e. Effectively deliver appropriate units of study from the programming curriculum.

f. Apply the use of innovative strategies as part of an inclusive and differentiated approach to programming;

g. Develop a technologically-enhanced educational framework for valid and sustainable learning opportunities;

h. Apply a diverse range of teaching strategies and methods to creatively meet the diverse needs of learners.


a. Describe the characteristics of the main underlying theories;

b. Outline and describe the main pedagogies for programming;

c. Interpret the effectiveness of various practical implications for classroom teaching;

d. Identify a range of resources that may enhance programming pedagogies;


a. Demonstrate a comprehensive understanding of the philosophy of teaching programming;

b. Understand programming pedagogies and their relationship to the rest of the educational curriculum;

c. Apply sound teaching strategies to the planning and development of a programming module;

d. Plan and develop appropriate units of study from the programming curriculum.

Assessment Methods

This module will be assessed through: Assignments, Reflections.

Suggested Readings

Core Reading List
  1. Bers, M.U. (2019). Coding as another language: A pedagogical approach for teaching computer science in early childhood. J. Comput. Educ6, 499–528.

  2. Figueiredo and J.,García-Peñalvo. F. J. (2019). Teaching and learning strategies of programming for university courses. In Proceedings of the Seventh International Conference on Technological Ecosystems for Enhancing Multiculturality (TEEM’19). Association for Computing Machinery, New York, NY, USA, 1020–1027. DOI:

  3. Saeli, M., Perrenet, J., Jochems, W. M., & Zwaneveld, B. (2011). Teaching programming in secondary school: A Pedagogical content knowledge perspective. Informatics in Education, 10(1), 73-88.

  4. Selby, C. (2011). Four approaches to teaching programming.

  5. Tangney, B., Oldham, E., Conneely, C., Barrett, S. and Lawlor, J. (2010). Pedagogy and Processes for a Computer Programming Outreach Workshop—The Bridge to College Model. Education, IEEE Transactions on. 53. 53 – 60. 10.1109/TE.2009.2023210.

  6. Mayer, R. E. (Ed.). (2016). Teaching and learning computer programming: Multiple research perspectives. Taylor and Francis Ltd, Routledge, London.

  7. Queiros, Ricardo. (2015). Innovative teaching strategies and new learning paradigms in computer programming. Idea Group, U.S. Harrisburg, PA, United States.

  8. National Research Council. 2000. How People Learn: Brain, Mind, Experience, and School: Expanded Edition. Washington, DC: The National Academies Press.

Supplementary Reading List
  1. Waite, J. (2017). Pedagogy in teaching computer science in schools: a literature review, London.

Skip to content