Press enter to skip the top menu

Teaching Introductory Programming

Introduction

Programming has been seen as being difficult to learn by students at both secondary and tertiary levels, with generally, a bi-modal distribution of the marks. The modal distribution at the high end indicated that a small number of students did not find programming difficult while the distribution at the low end indicated that another group had found it very difficult indeed.

Bearing this in mind this teaching manual will first present a literature review of research papers that seek to find a solution to both the high failure rate and the bi-modal distribution of the programming grades. Learning theories and teaching methodologies that will be reviewed will be:

Based on this body of knowledge we shall try to create a teaching module for NCEA module AS91883: Develop a computer program. In compliance with the NCEA requirements the following topics will be covered:

We shall be looking at the learning theories above to fine-tune the teaching of the programming topics

The manual is aimed at teachers who are new to programming or new to teaching. It also assumes that students will have no prior knowledge of programming. The teaching tool will be a Lego Mindstorms EV3 robot, running on MicroPython and Edison V2 running on EdPy.

Finally the relative merits and demerits of MicroPython and EdPy will be evaluated regarding their suitability for teaching the NCEA module and ease of migration to standard Python.

The manual will conclude with a programming assignment that would be compliant with testing the learning outcomes of AS91883.

Go to top