Skip to main content

Computer science fundamentals

Fourteen weeks on how computers actually work, written to sit alongside Matric CS and O/A-Level Computer Science.

Grades
9–12
Ages
14–18
Length
14weeks
Sessions a week
2
Each session
90min
Class size
15max

What this course is

Most students meet this material as a set of facts to memorise for a paper. This course teaches it as a set of things you can prove to yourself, because a student who has written a binary converter does not need to memorise how binary works.

Every theoretical topic is paired with something the student builds. Number bases come with a converter. Sorting comes with an implementation and a timing experiment on ten thousand records. Networking comes with reading real request headers. The written exam questions get easier as a side effect, which is the intent.

The topic list follows the areas that Matric Computer Science and Cambridge O and A Level Computer Science share, and where students most often lose marks: data representation, algorithm tracing, logic, databases and networks. It is not a past-paper class and we do not mark past papers; it is the understanding the papers are testing.

Week by week

Every week ends with something that did not exist at the start of it. That is what is listed under “ends with”.

  1. Week 01

    How a computer represents a number

    Binary, denary and hexadecimal, conversion in both directions, and why hex exists at all.

    Ends with: A converter the student wrote, checked against worked examples.

  2. Week 02

    Text, images and sound as numbers

    ASCII and Unicode, pixels and colour depth, sample rate, and calculating a file size from first principles.

    Ends with: A program that reports the true size of a text and an image file and explains the number.

  3. Week 03

    Logic gates and boolean algebra

    AND, OR, NOT, XOR, truth tables, and combining gates into something that adds.

    Ends with: A half adder built and tested in a gate simulator.

  4. Week 04

    Inside the machine

    The CPU, the fetch-decode-execute cycle, registers, RAM versus storage, and where a cache fits.

    Ends with: A written trace of one instruction through the cycle, in the student's own words.

  5. Week 05

    Algorithms and pseudocode

    Reading and writing pseudocode and flowcharts, and hand-tracing an algorithm with a trace table — the exact skill the written papers test.

    Ends with: Completed trace tables for three unseen algorithms.

  6. Week 06

    Searching

    Linear and binary search, implemented and then timed against each other on a large list.

    Ends with: Both searches implemented, with the student's own timing results.

  7. Week 07

    Sorting

    Bubble, insertion and merge sort, implemented, traced by hand, and compared on real data.

    Ends with: Three working sorts and a written comparison of them.

  8. Week 08

    Complexity in plain terms

    Why one algorithm falls apart at scale and another does not, using the students' own timing results from weeks 6 and 7 as the evidence.

    Ends with: A short report explaining the measured results using big-O language.

  9. Week 09

    Data structures

    Arrays, stacks, queues and linked lists, implemented rather than described, and what each is genuinely for.

    Ends with: A stack and a queue implemented and unit tested.

  10. Week 10

    Databases

    Tables, keys, relationships, normalisation to third normal form, and writing SQL against a real database.

    Ends with: A normalised schema and a set of working SQL queries.

  11. Week 11

    Networks

    Packets, IP addresses, DNS, HTTP, and the layers, examined by watching real requests in DevTools.

    Ends with: An annotated capture of what happens when a page is loaded.

  12. Week 12

    Security

    Hashing versus encryption, why passwords are hashed and salted, symmetric and asymmetric keys, and common attack types.

    Ends with: A password hashing demonstration and a written explanation.

  13. Week 13

    Operating systems and files

    Processes, memory management, file systems, and what the operating system is doing while a program runs.

    Ends with: A written account of what happens between a click and a running program.

  14. Week 14

    Consolidation and exam-style questions

    Working through structured written questions across the whole syllabus, with attention to how answers are marked and where marks are usually lost.

    Ends with: A set of worked structured answers reviewed by the instructor.

What they will be able to do

  • Convert confidently between binary, denary and hexadecimal
  • Hand-trace an algorithm and complete a trace table under exam conditions
  • Implement and compare searching and sorting algorithms
  • Design a normalised database and query it in SQL
  • Explain networking, security and machine architecture topics in their own words

What they build

  • A number base converter
  • A half adder in a logic simulator
  • Implementations of binary search and three sorting algorithms, with timing data
  • A normalised database with working SQL queries

Questions about this course