As usual the Dean's office has to approve makeup exams for the final. Exams that start as the same time as the official final will be created from the same random sample of questions as the official final. Makeup exams (or any exams that have to be scheduled at a time different from the official offering) will be sampled from the same database as the final, but with a different random key for sampling and for shuffling.
In the event that any of the tasks outlined below end up being cancelled (due to nuclear war or whatever), the value of the final exam will expand to cover the cancelled tasks.
The warm-up exercise involves transferring data back and forth from your git repository. More details will be posted to the wiki once the git repositories are available. The due date for the warmup is based on the notion that it can be done with no more than 5 days notice. If you don't have a git repository account 5 days before the due date you need to bring that to the attention of the prof while there is still time to fix it and allow you to make the regularly scheduled due date.
The assignments are due at the posted due date -- no automatic late extensions. Since they count so much of the mark, any exceptions have to go through the Dean's office. Shortly after the due time I will download the contents of all the course git repositories and the due assignment will be marked based on what is in each students git repository at that point in time. Note that git is a versioning system and so automatically handles updates. What this means is that you can hand in your work as frequently as it reaches a new milestone and only the final handin will be marked.
Indeed not making frequent uploads indicates a lack of knowledge of how to properly use computer versioning systems and is one of the reasons why forgetting to upload your final version is not an excuse -- instead there should be a recent upload that is close enough to the final that the penalty for forgetting the final would be minor. Note you should not use branching in the git repository or other fancy features as it may result in the marker not being able to determine what you are handing in. Scripts to guide proper usage of the git repository in the context of this class will be posted and discussed on the course wiki.
The assignment you are supposed to do will be placed in your git repository along with test data. For each language there is also a style checker you are supposed to use to verify that you are using the language properly. For full marks, you must program a solution in the specified language that seems reasonable to the marker, passes the provided test data, and has no problems from the style checker. Solving style checker problems by turning off the style checker in certain parts of your code is not an acceptable solution (see wiki for more on this). Furthermore the solution must be submitted on time and following the submission instructions in order not to be penalized for wasting the marker's time.