Page 1 of 1

Module Code - Title:

EN4053 - SUBJECT PEDAGOGY 1 (COMPUTER SCIENCE)

Year Last Offered:

2026/7

Hours Per Week:

Lecture

1

Lab

0

Tutorial

2

Other

0

Private

2

Credits

3

Grading Type:

N

Prerequisite Modules:

Rationale and Purpose of the Module:

This is the first of two pedagogy modules in computer science and is devoted to applying the trainee teacher's general knowledge and developing computer science specific pedagogical knowledge as well as a knowledge of learners and a knowledge of the applicability of the subject. The nature of this subject lends itself to a constructivist teaching method and will involve the implementation of active learning. Pedagogical skills for teaching computer science will enable students to consider different types of learners and to develop strategies for catering for a diverse range of learners in the computer science classroom. Pedagogical tools for teaching will enable students to include the creation of a supportive and cooperative inquiry-based learning environment. For this module hands-on and lab based programming will form a considerable component, allowing students to develop effective computer science pedagogical strategies for the short course in coding at Junior Cycle and the computer science subject at Leaving Certificate.

Syllabus:

This module seeks to introduce students to the nature of computer science and the key concepts they will be required to teach as part of the Junior Cycle coding short course and the Senior Cycle computer science curriculum. It will also seek to develop the knowledge and skills required to teach these courses/subjects effectively. As part of this module students will actively engage with the following topics: (a) Nature of computer science and its essential characteristics; (b) Overview of the discipline of computer science; (c) Core computer science concepts - computational concepts and computational thinking; (d) The programming language of Python; (e) Catering for diversity in the computer science classroom; (f) Junior Cycle Short Course in Coding; (g) Applying computer science teaching methods such as peer instruction, peer review, class discussion, iterative approaches, code walk through, debugging, pair-programming; (h) Team projects including program design, program specification, program implementation, testing phase, reflection phase; computer science problem solving strategies; (i) Assessing computer science learning.

Learning Outcomes:

Cognitive (Knowledge, Understanding, Application, Analysis, Evaluation, Synthesis)

On successful completion of this module, students will be able to: (a) Present and defend a rationale for studying computer science at second level. (b) Identify inclusion strategies that they could utilise in their classroom to carter for a diverse range of learners. (c) Identify and present an appropriate characterisation of computer science for teaching purposes. (d) Analyse a number of theory-based and practice-based approaches to teaching and learning computer science highlighting programming tasks, learning environments and assessment. (e) Understand the CBA requirements for the Junior Cycle coding short course.

Affective (Attitudes and Values)

On successful completion of this module, students will be able to: (a) Appreciate the educational value of problem-based learning on pupils' development and cognitive skills (b) Recognise and appreciate the value of computer science education research as a vehicle for improving classroom practice. (c) Be able to comprehend the important role of computer science in society.

Psychomotor (Physical Skills)

On successful completion of this module, students will be able to: (a) Construct, execute and evaluate python code and problems appropriate for Leaving Certificate Computer Science.

How the Module will be Taught and what will be the Learning Experiences of the Students:

Students will attend weekly lectures and tutorials. Teaching strategies presented in lectures will be explored and implemented in tutorial sessions.

Prime Texts:

Armoni, M (2011) Teacher Preparation Through the Lens of Computer Science , ACM Transactions on Computing Education
Selby, C.C (2015) Relationships: computational thinking, pedagogy of programming, and Bloom's Taxonomy , Proceedings of the Workshop in Primary and Secondary Computing Education.
Zingaro, D (2015) Examining Interest and Grades in Computer Science 1: A Study of Pedagogy and Achievement Goals , ACM Transactions on Computing Education
Coleman, G. (2021) The Big Book of Computing Pedagogy , Raspberry Pi Foundation
Meerbaum-Salant, O., M. Armoni, and M. Ben-Ari (2010) Earning computer science concepts with scratch , Proceedings of the Sixth international workshop on Computing education research
Hazzan, O., T. Lapidot, and N. Ragonis (2011) Teaching Methods in Computer Science Education , Springer
Du Boulay, B (1989) Some difficulties of learning to program , Journal of Educational Computing
Porter, L., C.B. Lee, and B. Simon (2013) Halving fail rates using peer instruction: a study of four computer science courses , Proceeding of the 44th ACM technical symposium on Computer science education

Other Relevant Texts:

Mouza, C., Yadav, A., Ottenbreit-Leftwich, A. (2021) Preparing Pre-Service Teachers to Teach Computer Science - Models, Practices, and Policies. , Information Age Publishing

Programme(s) in which this Module is Offered:

BACHELOR OF SCIENCE (EDUCATION) IN MATHEMATICS AND COMPUTER SCIENCE

Semester(s) Module is Offered:

Autumn

Module Leader:

conor.power@ul.ie