COSC326

Effective Programming

Semester 2, 2018

Teaching Team

  • Paul Crane
  • Lech Szymanski
  • Murray Tannock

Outline

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 individual point values for each one are really just a rough indication of their (expected) lengths (one point equalling one lab).

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

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 mark326@cs.otago.ac.nz 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). If for some reason you're using a language other than Java, Python or C, please also include a readme or similar on how to compile and run.

When submitting reports, please submit plain text or (preferred) 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, 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, or that you haven't (last semester a couple of students sent me resubmissions of études that we'd actually already accepted).

Class Reps

Timetable - Semester 2, 2018

Town hall meetings: 10:00-11:00 on Thursdays in Ōwheo G34.

Laboratories: 4:00-6:00 Mondays and Wednesdays, in Ōwheo Lab F.

NOTE: The first lab time (4pm on Monday July 9) will be an extended Town Hall in G34. It is important that you attend this session as we will be organising groups and pairs as well as introducing your first tasks.

Assessment: check your marks.

Étude Marker Name Type Points  
1 Paul HV Trees Individual 1  
2 Paul Sage and Trelawney Group 2  
3 Paul Look who's talking Pair 2  
4 Lech Cubes Pair 1  
5 Lech Poker Hands Individual 2  
6 Lech Loopy Numbers Pair 2  
7 Paul Summit Group 3
8 Lech Floating point Group 2
9 Paul Smoker's Problem Group 3  
10 Lech Four the same Group 1  
11 Paul Heads and Tails Pair 2  
12 Lech Ants on a Plane Pair 2  
13 Paul Threes Individual 1  
14 Lech Epidemic Individual 1 Hint (for the minimum number of sick cells required)


Page maintained by Paul.                     Last updated:  28th Sep 2018   03:49