The A-level course in Computer Science provides an opportunity to gain a deep understanding of the mathematical principles underpinning technology so prevalent in the modern world. It also allows students to develop their programming skills up to a level where they can transform many of their ideas into working applications for pleasure, or indeed, profit!
To start the course, you need excellent mathematical skills (which means being able to tackle easily any (I)GCSE-level question), as well as an (I)GCSE qualification in Computer Science and reasonable programming ability in Python. For example, being able to implement simple algorithms such as insertion sort or binary search in Python within 30 minutes without assistance. If you feel that you lack these programming skills at this stage, please get in touch with the Head of Computing, as it may well be possible for you to develop these before starting Sixth Form at MCS. Most of all, you should have a passion for solving challenging problems, if you do then you are likely to enjoy and benefit greatly from the course.
Computer Science is an increasingly popular university course, but as yet Computer Science A-level is not a required subject for taking the subject at university, although of course, it would offer excellent preparation. The key requirement for university Computer Science is Maths A-level, and often Further Maths A-level as well. Computer Science A-level is a challenging course and will suit those with a strong interest in, and aptitude for, programming and mathematical rigour.
Paper 1 (40% of A-level)
On-screen exam testing Python programming skills, algorithm design and problem solving.
Paper 2 (40% of A-level)
Written exam testing theoretical knowledge of Computer Science and problem-solving skills.
Non-examination assessment (formerly known as Coursework) (20% of A-level)
A large-scale, fully documented programming project solving a practical problem of the pupil’s choice, which will be completed during the Upper Sixth year.
General Interest Books
|Smullyan, Raymond||What is the Name of this Book?|
|Cormen, Thomas||Algorithms Unlocked|
|Leavitt, David||The Man who Knew too much|
|Domingos, Pedro||The Master Algorithm|
|Nahin, Paul||The Logician and the Engineer|
|Penrose, Roger||The Emperor’s New Mind|
|Hofstadter, Douglas||Goedel, Escher, Bach|
Python Programming Books
|Sweigart, Al||Invent your own Computer Games with Python|
|Sweigart, Al||Automate the Boring Stuff with Python|
|Matthes, Eric||Python Crash Course|
|Vaughan, Lee||Impractical Python Projects|
|Saha, Amit||Doing Math with Python|
|Lacey, Nicola||Python by Example|