This page is for students enrolled in courses for which I am lecturing.

Before contacting me with a question about the running of the course, please check whether your question has already been answered below. I receive the same questions over and over every semester, and this page is an attempt to make better use of our time.

  • What is the best way to succeed in this course? Learn the definitions of terms immediately. Read the relevant part of the textbook before coming to the lecture. For every abstract concept, make up your own concrete example and non-example of that concept. Use all your resources: lectures, office hours, tutorials, forum, library, internet, and especially your own brain. Spend enough time on the course. Don’t leave assignments to the last minute – start early.
  • What do I need to do to pass/get a certain grade for this course? For large classes, you will most likely be graded on your performance relative to other members of the class, as well as those who have taken it in recent years. I am trying to move to a more objective form of grading that sets out minimum standards for each grade, but this will take a few years to implement fully. I want a grade of C, for example, to mean that the student can actually get 100% on 50% of the exam, rather than just get half marks for every question. This will be much more informative for everyone. It requires much more time to set assessments that achieve this goal than with the traditional method.
  • What do I do if I have questions about material in lectures or tutorials? Contact the person who gave the lecture/tutorial. If using email please use a subject line that includes the name of the course. We receive a huge amount of email and yours may be ignored if you don’t follow this advice.
  • Do I need to follow the instructions for submitting programming assignments? Definitely. They will be marked either by computer (usually) or by human markers with no discretion. Please follow the instructions to the letter. The time for creativity is when you have to figure out how to solve the problem posed in the assignment, not when you present the solution.
  • What do “standard input” and “standard output” mean? The input stream that is connected to the keyboard, and the output stream that is connected to the screen. If you are asked to write a program that reads from standard input, it should accept input from the keyboard. A program writing to standard output should print to the terminal. Of course in many operating systems these input and output streams can be redirected, so the actual input and output may well be files when the markers look at your program.
  • What do I do if I think there has a been a mistake in marking my assignment? Contact the marker directly if you know who it is. Otherwise contact the lecturer who set the assignment. If necessary contact the course coordinator. Please make sure that you explain precisely what you are objecting to.
  • I have done badly in the assignments and the exam is fast approaching. Can I still pass the course? Very likely. A very good performance on the final exam is always given more weight for several reasons (it shows understanding of the whole course rather than just one part, and cheating/plagiarism/unauthorized joint work is much less likely). The lecturers have discretion to lower the practical pass mark and on some occasions in the past it has even been lowered to zero. This is not to say that the practical part is unimportant – a very good performance on the final is required before we will even think about doing what is described above. However, not studying properly for the final exam will essentially guarantee that you fail the course.
  • What will the exam be like this semester? Unless otherwise specified the format and content will be very similar to last semester for the same course.
  • How should I study for the exam? The standard advice is still good: read your notes thoroughly. Learn the definitions especially well. Try to do old exams under time pressure. Mark them and go over the parts you found hardest. Re-read the relevant notes. If still stuck, ask someone who knows. Get plenty of sleep and exercise, and remember it is just one exam. If you have prepared well, you have nothing to worry about.
  • Why are you using multiple choice exams? The short answer is that it is very difficult for a large class to mark free answer questions consistently, when partial credit must be given. I strongly believe that multiple choice assessment is fairer. Note that it is a lot less work to mark the exam, but takes a lot longer to set it, so reducing staff workload is not the main issue by any means. However it is certainly a better use of our time to think of good exams that test the required material efficiently than it is to write inferior exams and then spend many hours trying to mark them fairly.