XX10190: Programming and discrete mathematics
This is a 12-credit (20% of the entire first-year) course, with this
formal
description. It has recently been the subject of a Higher Education Academy workshop.
It is based on the premise that much introductory programming, at least of the
sort that mathematicians need, is discrete mathematics, and that the two
benefit from being taught together. In particular, recursion and induction are
two sides of the same coin.
The course team for 2012-13 is:
The course is assessed equally by examination and practical work: in more
detail
- 15% January examination (Discrete Mathematics)
- 35% May examination (Discrete Mathematics and Programming)
- 14% December Programming coursework
- 12% February class test (Discrete Mathematics in front of a computer)
- 12% March Programming coursework
- 12% May Programming coursework
In a typical week, there are two pieces of student work:
- fairly traditional mathematics homework, focusing on the Discrete
Mathematics side of the course: handed in one week and returned by the tutor in
the laboratory class next week;
- a "tickable" programming exercise, which has to be marked pass/fail by the
tutor each week. It is expected that a diligent student can always complete
these, and the tutors are encouraged to give assistance (obviously, not to actually do the exercise). The purpose of the tickable exercises is to ensure that the sudents engage
with, and keep up with, the programming concepts as they are introduced. To
this end, if a student gets less than 80% of the ticks, a pro rata
deduction is made from the coursework mark. In practice, this is very rare, as
a student who does not engage with the tickables does not have passing coursework marks anyway.