Computer Science Course Outline
Teaching is provided through lectures, practical classes and supervisions. In Year 1, you can typically expect 20 hours of teaching every week, including up to 12 lectures and practical classes.
Assessment is by three-hour examinations taken in the final term each year. Practical work is also assessed, and is equal to one written paper in the second and third years. You submit a 12,000 word dissertation on your third-year project.
Year 1 (Part IA)
You take four papers, including two compulsory Computer Science papers and at least one Mathematics paper.
The compulsory Computer Science papers cover topics including foundations of computer science (taught in ML), Java and object-oriented programming, operating systems, discrete mathematics, algorithms, and digital electronics. The algorithms, ML, Java and digital electronics topics involve laboratory work.
Most students take the Part IA Mathematics paper from Natural Sciences and one from the following:
- a third Computer Science paper covering topics including computer graphics, human-machine interaction and machine learning (students not taking this paper in Year 1 must take it in Year 2)
- a social psychology paper from the Psychological and Behavioural Sciences course
- one of Physics, Chemistry, Evolution and Behaviour, Earth Sciences or Physiology of Organisms from Natural Sciences
Alternatively, you may take the first-year Computer Science papers alongside two of the first-year papers of the Mathematics course. This is known as Computer Science with Mathematics, and some Colleges require applicants who want to take Computer Science with Mathematics in their first year to take STEP Mathematics.
You should indicate which combination you wish to take in your first year i.e. Computer Science, Computer Sciences with Social Psychology, Computer Sciences with Natural Sciences, Computer Science with Mathematics in your Supplementary Application Questionnaire (SAQ).
Year 2 (Part IB)
Core technologies and theories
You take four papers, spanning the core discipline through topics including:
- theory – including logic and proof, computation theory
- systems – including computer design, computer networking
- programming – including compiler construction, advanced algorithms
- applications and professionalism – including artificial intelligence, graphics, security
You also undertake assessed laboratory work, programming assignments, and a group project which reflects current industrial practice.
Students who don’t take the third Computer Science paper in Year 1 must take it in Year 2. They must then take the remaining Year 2 paper (covering several of the above topics at a more advanced level) in Year 3.
Year 3 (Part II)
You can choose from around 20 specialist courses (some options may not be available to those students taking a Year 2 paper in Year 3). These are examined across three papers to allow you to concentrate more on systems, theory or applications. The advanced topics are wide-ranging and usually include:
- mobile and sensor networks, principles of communication
- specification and verification of hardware and software, semantics
- quantum computing, bioinformatics, digital signal processing
- human-computer interaction, natural language processing, e-commerce
- advanced artificial intelligence, advanced graphics, computer vision, advanced algorithms
All students also work on a substantial project demonstrating their computer science skills, writing a 12,000 word dissertation on it. Projects are often connected with current Cambridge research and many utilise cutting-edge technology.
Year 4 (Part III, optional integrated Masters)
The fourth year is designed for students considering a career in academic or industrial research. You explore issues at the very forefront of computer science and undertake a substantial research project.
Progression to Part III is dependent on Part II examination achievement. Successful completion of Part III leads to the MEng qualification, as well as the BA degree attained at the end of Part II.