All Topics

Learn Computer Science - both programming and theory

Programming

Learn to code in Python - from basics to advanced concepts.

1
Programming
๐Ÿ“ฆ

Variables

Learn to store and use data in your programs. The foundation of all programming!

  • Variable assignment
  • Naming rules
  • Using variables in output
0% complete
2
Programming
๐Ÿ”ข

Arithmetic Operators

Perform calculations in Python using arithmetic operators.

  • +, -, *, / operators
  • Integer division and modulo
  • Order of operations (BIDMAS)
0% complete
3
Programming
๐Ÿท๏ธ

Data Types

Understand the different types of data and how to convert between them.

  • Strings, integers, floats, booleans
  • Type checking with type()
  • Casting: int(), str(), float()
0% complete
4
Programming
๐Ÿ”€

Selection

Make decisions in your code using if statements and conditions.

  • if statements
  • Comparison operators (==, !=, etc.)
  • Boolean operators (and, or, not)
  • if-else and if-elif-else
0% complete
5
Programming
๐Ÿ”„

For Loops

Repeat code a specific number of times. Essential for automation!

  • for loops and range()
  • Loop variables
  • Accumulator pattern
0% complete
Most Content
6
Programming
๐Ÿ”

While Loops

Repeat code while a condition is true. Great for input validation!

  • while loops
  • Condition-controlled iteration
  • break and continue
  • Input validation
0% complete
7
Programming
๐Ÿ“‹

1D Arrays (Lists)

Store multiple values in a single variable. Learn to iterate with loops!

  • Creating and accessing arrays
  • Indexing and length
  • Looping through arrays
0% complete
8
Programming
๐Ÿ“Š

2D Arrays (Grids)

Work with data in rows and columns. Master nested loops!

  • Creating 2D arrays
  • Row and column indexing
  • Nested loops
0% complete
9
Programming
๐Ÿ”ค

String Manipulation

Strings are arrays of characters! Learn slicing, concatenation, and more.

  • Strings as character arrays
  • Indexing and slicing
  • Concatenation and methods
0% complete
10
Programming
โšก

Functions

Organise code into reusable blocks. Write once, use many times!

  • Defining functions
  • Parameters and arguments
  • Return values
  • Local and global variables
0% complete
11
Programming
๐Ÿ›

Common Errors

Learn to identify, understand, and fix the most common programming errors.

  • Syntax errors vs logic errors
  • Reading error messages
  • Debugging strategies
0% complete
12
Programming
๐Ÿ“

File Handling

Read from and write to files. Store data permanently!

  • Opening and closing files
  • Reading: read(), readline(), readlines()
  • Writing and appending
  • The with statement
0% complete
13
Programming
๐Ÿ›ก๏ธ

Input Validation

Check user input before using it. Essential for robust, secure programs!

  • Presence, Range, Length checks
  • Format and Type checks
  • Input sanitisation
  • SQL injection prevention
0% complete

Theory

Understand how computers work - the concepts behind the code.

1
Theory
๐Ÿ–ฅ๏ธ

CPU & Fetch-Execute Cycle

Understand how the processor runs every program on your computer.

  • Purpose of the CPU
  • CPU components (CU, ALU, Registers)
  • The Fetch-Execute cycle
0% complete
2
Theory
๐Ÿ’พ

Memory & Storage

Learn how computers store data - from lightning-fast RAM to permanent storage.

  • RAM vs ROM
  • Virtual memory
  • Cache memory
  • Memory hierarchy
0% complete
3
Theory
๐Ÿ’ฟ

Secondary Storage

Explore the different types of permanent storage and when to use each.

  • Magnetic, Solid State, Optical
  • Capacity, Speed, Portability
  • Durability & Reliability
  • Choosing the right storage
0% complete
4
Theory
๐Ÿ“

Data Units & Capacity

Understand how data is measured, converted, and calculate file sizes.

  • Binary data & why computers use it
  • Units: bit to petabyte
  • File size calculations
  • Storage capacity planning
0% complete
5
Theory
๐Ÿ”ข

Number Systems

Master binary, denary, and hexadecimal - the number systems computers use.

  • Binary & denary conversion
  • Hexadecimal conversion
  • Binary addition & overflow
  • Binary shifts (ร—2, รท2)
0% complete
6
Theory
๐ŸŽจ

Data Representation

How computers store characters, images, and sound in binary.

  • Character sets (ASCII, Unicode)
  • Images: pixels, colour depth, metadata
  • Sound: sampling, bit depth, duration
  • File size calculations
0% complete
7
Theory
๐Ÿ“ฆ

Compression

Understand how files are made smaller for storage and transmission.

  • Why compression is needed
  • Lossy vs Lossless compression
  • Common formats (ZIP, JPEG, MP3)
  • Choosing the right type
0% complete
8
Theory
๐ŸŒ

Computer Networks

Learn how computers connect and communicate with each other.

  • LAN vs WAN networks
  • Network hardware (NIC, switches, routers)
  • Client-server & peer-to-peer
  • Star & mesh topologies
0% complete
9
Theory
๐Ÿ“ก

Protocols & Layers

Understand wired/wireless connections, protocols, and network layers.

  • Wired vs Wireless (Ethernet, WiFi, Bluetooth)
  • IP & MAC addressing
  • Protocols (HTTP, HTTPS, FTP, SMTP, IMAP)
  • TCP/IP layers
0% complete
10
Theory
๐Ÿ”

Network Security

Understand threats to computer systems and how attackers exploit vulnerabilities.

  • Malware: viruses, worms, trojans, ransomware
  • Social engineering & phishing
  • Brute-force & denial of service attacks
  • SQL injection & data interception
0% complete
11
Theory
๐Ÿ›ก๏ธ

Preventing Vulnerabilities

Learn how to protect computer systems using security prevention methods.

  • Penetration testing & anti-malware
  • Firewalls & encryption
  • User access levels & passwords
  • Physical security measures
0% complete
12
Theory
โš™๏ธ

Operating Systems

Understand the software that manages your computer and enables applications to run.

  • User interface (GUI & CLI)
  • Memory management & multitasking
  • Peripheral management & drivers
  • User & file management
0% complete
13
Theory
๐Ÿ”ง

Utility Software

Learn about software that performs housekeeping tasks to maintain and optimise your computer.

  • What is utility software?
  • Encryption software
  • Defragmentation
  • Data compression
0% complete
New

Additional Topics

These topics can be studied alongside or after the main curriculum: