Computer Science at Oxford and Cambridge: Luke Ong Oxford University Computing Laboratory
Computer Science at Oxford and Cambridge: Luke Ong Oxford University Computing Laboratory
Computer Science at Oxford and Cambridge: Luke Ong Oxford University Computing Laboratory
Computer Laboratory
Contents
Oxford & Cambridge University
What is Computer Science?
Details of the two courses
Admissions
Computer Laboratory
Research Assessment
Oxford and Cambridge are two of the top CS
departments for research
– the following grades are taken from the five-yearly
Research Assessment Exercises (1996,2001 & 2008)
which are graded: 1 2 3a 3b 4 5 5*
Cambridge scored the best possible:
5*, 5* and 3.35 GPA
– Highest ranking in 2008 assessment
Oxford scored 5* & 5 and 3.15 GPA
– Overall 3rd in research power
Computer Laboratory
Teaching assessment
There are many good Computer Science
teaching departments in the UK:
– Cambridge, Edinburgh, Exeter, Glasgow, Imperial,
Kent, Manchester, Oxford, Southampton, Swansea,
Warwick, York
• all scored 23/24 in the government’s Teaching Quality
Assessment
• all rated above 80% by the Guardian University Guide 2002
• do you trust either of these measures?
– you need to check what they have in their syllabus
• is it good Computer Science?
• is it what you want to do?
Computer Laboratory
Contents
Oxford & Cambridge University
What is Computer Science?
Details of the two courses
Admissions
Computer Laboratory
What is Comp Sci?
Programming
Science
Art
Engineering
Mathematics
Linguistics
Psychology
Computer Laboratory
Computer Science…
... will save the planet by providing systems
that are
– sustainable
– dependable
– adaptable
… teaches general skills
– analysis
– problem solving
– abstraction
– design
… produces extremely marketable graduates
Computer Laboratory
Graduate profiles
Paul Cunningham
A-levels in Maths, F. Maths, Physics & Art
PhD in verification of self-timed hardware
Started own company with £2.5m capital
Sonali Tandon
A-levels in Maths, Physics & Chemistry
Working for Citigroup’s Technology Division
in London
Isabel Kingsmill
A-levels in Maths, Physics & Chemistry
Working for Detica in Guildford on data and
signal processing
Computer Laboratory
Contents
Oxford & Cambridge University
What is Computer Science?
Details of the two courses
Admissions
Computer Laboratory
Teaching and learning
Students belong to a college and a faculty
Attend lectures in their faculty
Taught in small groups in college
Computer Laboratory
Teaching: our aims
To give our students an understanding of
fundamental principles that will outlast
today’s technology
To produce graduates who will lead
development not merely cope with it
Computer Laboratory
Cambridge History
Mathematical Lab
founded 1937
EDSAC May 1949
Practical computer
– 650 instructions/s
– 1k x 17 bits
– paper tape input
– teletype output
– 4m x 3m
– 3000 valves
– 12kW
Computer Laboratory
William Gates Building
Computer Laboratory
Cambridge phenomenon
Cambridge has developed rapidly over past 15 years
New technology and start-up companies
Many spin-offs from University research groups
IT companies around Cambridge - Silicon Fen
Computer Laboratory
Computer Laboratory
Staff
– 35 teaching officers
– 35 contract researchers
– 10 computer officers
– 15 administration and assistants
Students
– 150 research students
– 30 post-graduate Diploma
– 25 MPhil in Speech and language
– 340 undergraduates
Computer Laboratory
Syllabus
Computer Laboratory
Courses
Programming
– Java, C++ (object-oriented)
– ML (functional)
– Prolog (logic)
– C (procedural)
– Assembler
– Verilog (hardware definition)
– Comparative Languages
Hardware
– Digital Electronics
– Computer design
– ECAD, VLSI
– Quantum Computing
Mathematics
– Underpins theory and many applications
– Post A-level functions, sets, number theory, probability
Computer Laboratory
Courses II
Algorithms
– Data structures and Algorithms
– Complexity
Theory
– Computation Theory
– Logic & proof, Semantics, Information theory, Specification &
verification, Types, Concurrency, Finite Automata
– Automatic Theorem Proving
Systems
– Operating Systems, Real time systems
– Networks, Distributed Systems
– Middleware (Transport, Trust), E-commerce
– Compilers
– Databases
Computer Laboratory
Applications
Graphics
– HCI
– Vision
– Human behaviour animation
Security
– Chip analysis, Protocols, Crypto, Steganography, Privacy
Language, speech and information
– Natural Language Processing
– AI
– Information retrieval
– Bioinformatics
Sentient computing
– Sensors, Tracking, Augmented Reality, Vehicles, Sports
Computer Laboratory
Professional skills
Professional practice & ethics
– ethical theory, professions, computer misuse
Software Engineering
– failures, life cycles, quality, tools, management
– design, formal methods, specification, proof
Intellectual property law
Business studies
– how to start and run a business
– finance, project management, sales & marketing, exit
strategies
Computer Laboratory
The functional approach
Calculating factorials
fun factorial 0 = 1
| factorial x = x * factorial (x – 1);
Computer Laboratory
Cambridge Course
Three years
1st year ½ CS, ¼ Maths, ¼
option from elsewhere Year 3
2nd, 3rd years 100% CS Computer Science
Year CS Ma NS NS CS CS Ma NS CS CS Ma Ma
1
Computing option Computer Science Computer Science
in Natural Sciences with Physics, with Mathematics
Chemistry, CS CS Ma Psy
Geology,
Computer Science
Physiology,
with Psychology
Evolution
Computer Laboratory
Course components
8+8+4 = 20 weeks teaching per year
12 one-hour lectures per (6-day) week
– plus similar time in review and private study
6 hours of practical work
2 or 3 supervisions of one hour each
– plus 4 hours of preparation each
Computer Laboratory
Practical skills
First year Practical exercises
– hands on, time management
Second year Group projects
– specification & acceptance, reporting, tools,
management, team work, deadlines, presentation
Final year Individual projects
– deadlines, dissertation, presentation
Computer Laboratory
Computing Laboratory
• Founded by Leslie Fox (1957)
• About 50 academic staff
• Home to different groups
Wolfson Building
Computer Laboratory
Oxford Research Themes
Programming Languages
Foundations, Logic and Structure
Numerical Analysis
Automated Verification
Software Engineering
Computational Biology
Information Systems
Computer Laboratory
Oxford Courses
Computer Science
– Computer Science firmly based on Mathematics
Mathematics and Computer Science
– similar, but with more Mathematics
Computer Laboratory
Course components
8 + 8 + 4 = 20 teaching weeks per year
10-12 one-hour lectures per (5-day) week
– plus similar time in review and private study
4-8 hours of practical work per week
2-3 hours of college tutorials per week
– Personalised: 1 tutor to 2 students
– Intensive: up to 8 hours of preparation time
Advanced classes for 3rd & 4th-yr topics
Year-long individual project (for 3rd & 4th
year)
Computer Laboratory
First Year Topics
Imperative Programming
Functional Programming
Design and Analysis of Algorithms
Digital Hardware
Calculus
Linear Algebra
Logic and Proof
Discrete Maths
First four have practical exercises.
Computer Laboratory
Year By Year
First Year
– Imperative & Functional Programming
(former is about languages like C and Java; latter is
also a good language for talking about algorithms)
– All courses are compulsory.
– MCS have Maths courses instead of some CS courses
Second Year
– Core courses: Object-Oriented Programming (in
Java), Concurrency, Networks, Operating Systems
– Other options. E.g. Graphics, Numerical Computation,
Architecture, Compilers, Programming Languages,
Models of Computation, etc.
Computer Laboratory
Year By Year
Third Year
– Individual project (= 25% of time)
– More options; e.g. Intelligent Systems, Security,
Optimisation, Databases, etc.
– MCS has more Maths options & no project.
Computer Laboratory
A Variety of Options
Automated Verification Information Systems
– Automata, Logic & Games – Database Implementation
– Randomised Algorithms – Computational Linguistics
– Software Verification – Information Retrieval
– Probabilistic Model Checking – Knowledge Representation
Foundations & Logic Intelligent Systems
– Lambda Calculus and Types – Machine Learning
– Categories, Proofs & – Computer Animation
Processes
Programming Languages
– Quantum Computer Science
– Program Analysis
– Game Semantics
– Concurrent Programming
Computational Biology
– Executable Biology
– Bioinformatics
Computer Laboratory
Example Project Topics
Medical Image Analysis
Biologically-Inspired Computing
Robot Soccer Simulation
Natural Language Processing
Quantum Computing
Compilation of Security Protocols
Formal Hardware Verification
Chess Playing Program
Computer Laboratory
Contents
Oxford & Cambridge University
What is Computer Science?
Details of the two courses
Admissions
Computer Laboratory
Oxford Admissions
College based
We consider:
– GCSE results, AS level module marks, and A-level
predictions; or equivalent international examinations
– school record; extra-curricular activities (e.g.
national + international competitions)
– personal statement & references
– common written test in Nov (and possibly individual
college test before interviews)
– at least two subject interviews – problem solving
Common Database, Pools & Open Offers
– redistribute uneven applications between colleges
Computer Laboratory
Cambridge Admissions
Very Similar
We consider
– GCSE results, or equivalent international qualification
– AS level module marks, A2 predictions; school record
– personal statement
– reference
– two subject interviews (>90% interviewed)
• unseen problem solving
– written tests
• UCLES Thinking Skills Assessment (TSA)
• individual college tests
– computing background within and outside school
Winter and Summer pools
– redistribute uneven applications
between colleges Computer Laboratory
Prerequisites
3 A grades at A-level
– more than 3 A-level or AS-levels highly valuable
– not counting General Studies
Mathematics to A-level
– is absolutely essential
Further Maths
– nearly essential, if your school offers it
Computer Laboratory
Other A-levels
A Physical Science
– is desirable
Computing A-levels
– Computer Science
• good, similar in character to university-level CS
• but very few schools offer it
– ICT, Information Technology,…
• quite different from university-level Computer Science
• not relevant
Other subjects
– up to you e.g. history, languages, etc
– traditional academic subjects best
Computer Laboratory
Computer Science at
Oxford and Cambridge
Luke Ong Graham Titmus
Oxford University University of
Computing Laboratory Cambridge
www.comlab.ox.ac.uk Computer Laboratory
www.cl.cam.ac.uk
Computer Laboratory