First Semester, 2023

Important note

This paper moved to blackboard. Make sure to check all resources and announcements on blackboard. Also please check your student emails if you are enrolled in this paper. Check blackboard for access. If you have no blackboard access, please contact stefanie.zollmann(at)

Teaching Team

  • Reuben Crimp
  • Stefanie Zollmann


This paper aims to improve and develop your programming skills by setting a series of exercises, called études, which require an analytical and creative approach to problem solving. Most, but not all, of them will involve programming tasks. Some will not use computers at all, while others will use computers only for ancillary tasks. Each solution will be assessed against the requirements and you will be expected to go back and rework each étude until it is completed satisfactorily. You will be required to fully test and debug your programs as well as learn to identify inefficiencies.

The main objectives of this course are to develop and foster general skills relating to computer related techniques, understanding a problem, problem solving strategies and working with people. Most of the études will require working in pairs or in groups, although some exercises are individual work. There are no lectures, but weekly town hall meetings will be used to discuss or propose solutions, give hints, and reflect on the things you've learned.

To pass COSC326 you must complete all of the études.

The course structure and objectives are set out in more detail in the manifesto.

All material and information will be available on blackboard. This website is just for information. Please use blackboard to get the latest information for this paper.

Academic Integrity

In COSC326 we place high value on the virtue of academic integrity, and view academic misconduct as a very serious matter. For further information, please see our statement on academic integrity and academic misconduct. Here is a student guide to Academic Integrity published by the University.

Submission details

Please send all COSC326 related materials to not to any personal address. This includes all submissions of work, questions etc.

When submitting programs you must submit source code (i.e., .java, .py, or similar files) as a git repository with a README file or similar on how to compile and run your code. The readme file should contain some test cases you have used to test your code. Check blackboard for more details on the git repository.

When submitting reports, please submit PDF files. Under no circumstances should you submit .doc, .docx, .odt or similar file types. You should think of your reports as being documents sent to a client answering questions that the client has raised -- we may bounce them back if they are too informal, too technical, or poorly presented.

If you have made significant use of any external resources in preparing your code or report, those resources must be identified, clearly documented and acknowledged. Formal citation is not necessary, but enough information to enable me to find the resource is required.

If a submission is accepted we will reply with an email that includes the phrase "complete and correct", or a very close variant. When you receive such an email you can assume the submission has been accepted. Conversely, if that phrase does not appear, then your submission has not been accepted and a resubmission is required. If you are at all in doubt, then check back with us before assuming either that you've finished.

Timetable - First Semester, 2023

Check Blackboard for details.

Page maintained by Stefanie Zollmann.                    Last updated:  26th Feb 2023   23:07 Pacific/Auckland