Computer Science
The specification that our course follows is OCR Computer Science H446
Mathematicians and physicists need to be computer scientists as well
Our aim is that all students will leave ULMaS confident in their programming capabilities. Everyone starts the Computer Science course at the beginning of Year 12, and many students who have never studied computing before discover that it's something they are good at, and enjoy. Some students will become proficient coders during Year 12 and then choose to focus on other subjects in Year 13, while others will discover that they want to continue to study Computer Science at university and make a career in computing.
Computing is essential to the scientific advances of the 21st century; from modern conveniences such as satellite navigation, to DNA sequencing, or number-crunching data generated by the Large Hadron Collider. Students who will study mathematics, engineering, physics, data science or any related field will need to understand not just how to code but also the fundamental logic which is the foundation of all computing.
We teach in lessons and lectures
Computer Science lessons focus on developing the ability to think computationally, that is, how to break down a problem into a logical series of steps, which can then be written as a program and executed by a computer. We use computational problems from mathematics and physics to motivate key ideas in programming, such as loops, conditionals, data structures and data types. Topics such as set theory and graph theory, which lie within decision mathematics, form key data structures of computer science theory and programming practice and thus used in many problem solving algorithms.
You might be asked to work with another student as "driver and navigator" to help you both develop your thinking about programming approaches.
In Year 12 you will also have weekly lectures to deliver the computer science theory and introduce new ideas. This stops in Year 13 in order to allow you more time to work on your personal programming project which will be the non examined assessment part of the course.
We use a range of languages and techniques
We want our students to understand the mathematics underlying computer science and develop an understanding of a range of coding languages.
Using computer science techniques such as abstraction you will learn low level fundamentals of logic gates and Boolean Algebra and demonstrate how these can be combined to form more complex circuits, abstracting away the detail in the process, you will see how these combine to form the operations we see in modern day CPUs.
You will learn to program in languages such as Java, Python, C++, Haskell, R. As well as using web technology languages such as HTML, CSS, Javascript and PHP. You will study what algorithms are, how they work and how to make use of them, and how to bring this knowledge into mathematics as a powerful way of solving problems.
We teach in lectures and lessons