EDEM665-16W (D) Whole Year 2016 (Distance)

Special Topic: Teaching Computer Programming

30 points

Start Date: Monday, 22 February 2016
End Date: Sunday, 13 November 2016
Withdrawal Dates
Last Day to withdraw from this course:
  • Without financial penalty (full fee refund): Friday, 4 March 2016
  • Without academic penalty (including no fee refund): Friday, 2 September 2016


This course aims to equip participants to teach the programming standards in the NCEA Digital Technologies achievement standards that were introduced from 2011 to 2013. Students will explore what computer programming is, and various approaches to teaching it. Participants will develop research skills and investigate theories and practices in programming education.

Is this course for me?
This course is intended for anyone who expects to be involved in teaching computer programming in schools, clubs, or other situations. It is mainly aimed at the current NCEA level standards, but many schools are teaching this material in years 9 and 10 as preparation for NCEA, and if New Zealand follows overseas trends, introductory programming will soon be taught in primary schools. The course is most suitable for secondary and intermediate school teachers; it will also be of interest to primary school teachers who wish to become leaders in this area with the changes that are likely over the next few years.

The course will assume some prior experience in programming, but not a high level of expertise - roughly the level a student would need to earn achieved in level 1 NCEA, typically in either Scratch or Python. While the course isn't intended primarily to teach you how to program, we will be looking at pedagogical techniques and using them with you. Therefore, you will develop your understanding of programming in the process and become comfortable at level 2 NCEA, plus have some basics of level 3.

There are several pathways into this course:
• If you have no prior programming experience whatsoever, or only dabbled a little with programming, are largely self-taught, or have been teaching some programming but feel a little lost - you should contact Tim Bell to discuss what preparation you would need. This would typically be an online course (see the next point).
• If you have completed an introductory course on programming then you are probably ready for this course. Such courses include the Otago online programming course PFST101 (http://www.cs.otago.ac.nz/schools/), or if you have done well in the Canterbury CS4HS programming workshops (http://cosc.canterbury.ac.nz/cs4hs/workshops.html) .
• If you are a confident programmer and/or have considerable experience teaching programming (at least to NCEA level 2), then you will still get a lot from the course because we will look at different ways to teach programming. Many experienced programmers find teaching difficult because it's hard to see things from a beginner’s point of view and many assume that learners see programming in the way that they do.

To check if your currently level of programming is suitable, there will be a very short quiz prepared for the course, but if you have difficulties with it you should contact Tim Bell to work out how to prepare.

The emphasis of the course is on how to teach programming for beginners, and we won't be looking at advanced programming concepts such as OO design or software engineering methodologies. The coverage of programming in the course is broad, rather than deep. Before, during, and after the course you should practice programming exercises regularly to keep your programming ability active.

The main languages used in this course will be Scratch (as an example of programming in an Initial Learning Environment), and Python (a popular text-based language in education). In addition, we will touch on other languages, and the programming principles that are taught will apply to a variety of languages.

Learning Outcomes

  • On completion of this course, participants will be able to:
  • Demonstrate an understanding of what computer programming is and identify the key concepts for beginner programmers.
  • Demonstrate an understanding of pedagogical knowledge for teaching programming at the school level and its application in one or more classes.
  • Critique and apply socio-cultural learning theory to programming education in schools and other contexts.
  • Critically evaluate existing resources for teaching programming in secondary schools.
  • Analyse, critique and apply relevant literature (from the main English-language bodies of material) related to the teaching of programming in the schooling sector.
  • Design, implement, develop and evaluate lessons to teach programming to beginners, including its assessment.
  • Examine and demonstrate an understanding of the implications of social and cultural issues including diversity and pedagogical approaches in programming education.


Subject to approval of the Head of School RP: This course does not require substantial experience in programming; students without any programming experience at all should contact the course supervisor for recommended preparation prior to stating the course.

Recommended Preparation

This course does not require substantial experience in programming; students without any programming experience at all should contact the course supervisor for recommended preparation prior to stating the course.

Course Coordinator

Niki Davis


Tim Bell and Niki Davis

Course delivery:
This is an online distance learning course blended with two one-week on-site blocks. Our experience plus the experience overseas is that programming courses are considerably more effective if there is a substantial in-person component.

The two on-site weeks will be held simultaneously in Christchurch and Dunedin (you are free to choose which campus you attend). Study will be based primarily around practical experiences, and will also include presentations from lecturers (via a video link to those at the other campus), and industry visits. The on-site weeks will start on Monday afternoon and finish Friday midday, to allow time for travel.

Key Dates:
22 Feb 2016: Course starts. There are no lectures or meetings at this point; instead you will be assigned background material to read/view. If you are new to programming, you should also use this time to engage with the course staff to make sure you are suitably prepared for the first on-site block.

18 Apr 2016 - 22 Apr 2016: First mandatory on-site block (Christchurch or Dunedin) with tutorials, lectures, discussions and industry visits. The times are Monday 12:30pm - 4pm; Tuesday-Thursday 9am to 4pm; Friday 9am to 12 noon (the industry visit is likely to be on Friday).

2 May 2016 onwards: during the second school term there will be one weekly online meeting plus online resources to support students as they implement the programming pedagogies in their own classes. You will have support for your teaching plus opportunities to learn from others’ experiences. The weekly meeting is likely to be on Tuesdays 4-5pm and confirmed after the April on-site block if adjusted to suit student availability.

Mid June 2016: first assignment is due

11 July 2016 - 15 July 2016: Second mandatory on-site block (Christchurch or Dunedin) for tutorials, lectures, discussions and industry visits. Times to be similar to the first block.

25 July 2016- : Online support will continue through term 3 and 4 as you deliver programming to your class and develop your report.

Mid October 2016: Final assignment is due


Assessment Due Date Percentage  Description
Report on Teaching using an Initial Learning Environment 25% Due Mid June
ePortfolio/Participation 25% Participation will be based on contributions to the class, such as participating in class discussions, programming exercises and reflections in a blog. Due mid-September.
Project 50% Teacher enquiry project on coding and teaching of programming (report and presentation). Due mid-October.

Assessment for the course is based heavily around your classroom practice; we will support you in planning and delivering courses, and you will need to report on your background reading, the course design, and your observations of the students; this is most easily done with a written report, but if you prefer to use digital approaches such as blogs or video, these formats can also be submitted as long as they are rigorous in describing the work and show sound conclusions. If you aren't currently teaching programming to a class, you could organise an out-of-school opportunity, such as volunteering for a Code Club (codeclub.org.nz) or running a lunchtime club.

The assessments designed for this course aim to promote authentic learning with a positive impact on the teaching of programming by you and your peers. With our mastery approach everyone has the opportunity to earn top marks, while all three assessments are required to pass the course.

Indicative Fees

Domestic fee $1,740.00

* All fees are inclusive of NZ GST or any equivalent overseas tax, and do not include any programme level discount or additional course-related expenses.

Minimum enrolments

This course will not be offered if fewer than 10 people apply to enrol.

For further information see School of Educational Studies and Leadership .

All EDEM665 Occurrences

  • EDEM665-16W (D) Whole Year 2016 (Distance)