All Topics
Everything on EduCS.me in one place. Click any topic to jump straight in.
Hardware & Architecture
How computers work at the physical level – from logic gates to cloud services.
| Topic | What you’ll learn |
|---|---|
| CPU Architecture | ALU, CU, registers, fetch-decode-execute cycle |
| GPU | Graphics processing, CPU vs GPU comparison |
| Primary Memory | RAM, ROM, cache (L1/L2/L3), registers |
| Secondary Storage | SSD, HDD, optical, flash – internal and external |
| Logic Gates | AND, OR, NOT, NAND, NOR, XOR, XNOR, truth tables, logic diagrams |
| Compression | Lossy vs lossless, run-length encoding |
| Cloud Computing | SaaS, PaaS, IaaS, deployment models |
| Translation | Compilers vs interpreters, JIT, bytecode |
Data Representation
How computers store numbers, text, images, and sound as binary.
| Topic | What you’ll learn |
|---|---|
| Number Systems | Binary, hexadecimal, decimal conversions |
| Representing Data | Encoding text, images, audio, video in binary |
Operating Systems
The software layer that manages hardware, processes, and resources.
| Topic | What you’ll learn |
|---|---|
| OS Fundamentals | Role and functions of an operating system |
| Scheduling | FCFS, round robin, priority, multilevel queue |
| Polling & Interrupts | How the CPU handles device communication |
| Multitasking | Context switching, deadlock, resource contention |
| Control Systems | Sensors, actuators, feedback loops, real-world applications |
Networks & Security
How computers communicate, from local networks to global infrastructure.
| Topic | What you’ll learn |
|---|---|
| Network Fundamentals | LAN, WAN, PAN, VPN, network devices |
| Protocols & Layers | TCP, UDP, HTTP, HTTPS, DHCP, TCP/IP model |
| Network Architecture | Topologies, client-server vs P2P, segmentation |
| Data Transmission | IP addressing, packet switching, routing |
| Network Security | Firewalls, vulnerabilities, countermeasures |
| Encryption | Symmetric, asymmetric, digital certificates |
Programming Fundamentals
Core programming concepts – variables, strings, error handling, debugging.
| Topic | What you’ll learn |
|---|---|
| Variables & Types | int, double, boolean, char, String – declaration and usage |
| Strings | length, substring, indexOf, charAt, equals, compareTo |
| Exception Handling | try/catch/finally, handling runtime errors |
| Debugging | Trace tables, breakpoints, print debugging |
Programming Constructs
Control flow – making decisions and repeating actions.
| Topic | What you’ll learn |
|---|---|
| Selection (if/else) | if, else if, else, boolean conditions, nested selection |
| Iteration (Loops) | for, while, do-while, nested loops |
| Methods & Modularization | Parameters, return values, scope, why modularize |
Data Structures
Organizing and storing collections of data.
| Topic | What you’ll learn |
|---|---|
| 1D Arrays | Declaration, traversal, common operations, copying |
| 2D Arrays | Rows and columns, nested traversal, matrix operations |
| ArrayList | Dynamic lists, add/remove/traverse, wrapper types, comparison with arrays |
| Stacks | LIFO, push/pop/peek, undo, browser history, bracket matching |
| Queues | FIFO, enqueue/dequeue, print queues, scheduling, task processing |
Algorithms
Solving problems efficiently – searching, sorting, and measuring performance.
| Topic | What you’ll learn |
|---|---|
| Big-O Notation | O(1), O(log n), O(n), O(n^2) – comparing efficiency |
| Searching Algorithms | Linear search, binary search – when to use each |
| Sorting Algorithms | Bubble sort, selection sort – tracing and comparing |
| Recursion | Base/recursive case, call stack, factorial, Fibonacci (HL) |
| Quicksort | Pivot, partition, recursion tree, BST link, best/average/worst case, O(n log n) average vs O(n^2) worst (HL, explain-only) |
Computational Thinking
The thinking skills behind every solution – before you write any code.
| Topic | What you’ll learn |
|---|---|
| Problem Specification | Problem statement, constraints, objectives, goals, inputs, outputs, evaluation criteria |
| CT Concepts | Decomposition, pattern recognition, abstraction, algorithmic design |
| Flowcharts | Standard symbols, tracing algorithms, drawing flowcharts from algorithms |
File Processing
Reading from and writing to text files for data persistence.
| Topic | What you’ll learn |
|---|---|
| Reading Files | Scanner, BufferedReader, parsing CSV, error handling |
| Writing Files | FileWriter, BufferedWriter, overwrite vs append, CSV output |
Object-Oriented Programming
Modelling real-world systems with classes, objects, and relationships.
Fundamentals
| Topic | What you’ll learn |
|---|---|
| What is OOP? | Four principles, procedural vs OOP, why it exists |
| Classes & Objects | Class as blueprint, instantiation with new |
| Constructors | Default, parameterised, overloaded constructors |
| The this Keyword | Parameter shadowing, this.field pattern |
| Encapsulation | Private fields, getters/setters, data hiding |
| Access Modifiers | private, public, protected, default |
| Static Members | Static vs instance, shared counters, why main is static |
| Object References | Aliasing, null, == vs .equals() |
| UML Class Diagrams | Three-section box, symbols, drawing from code |
| Aggregation | Has-a relationships, arrays of objects |
Inheritance & Polymorphism (HL)
| Topic | What you’ll learn |
|---|---|
| Inheritance | extends, super(), constructor chaining, is-a |
| Method Overriding | @Override, replacing parent behaviour |
| Polymorphism | Polymorphic arrays, runtime method dispatch |
| Abstract Classes | abstract keyword, forcing subclass implementation |
| Interfaces | interface, implements, multiple interfaces |
| Composition vs Inheritance | Has-a vs is-a, favour composition |
Exam Skills
| Topic | What you’ll learn |
|---|---|
| OOP Method Patterns | Filter, count, accumulate, find-by-ID, max/min, remove |
| Selection Sort on Objects | Sorting by attribute, .compareTo(), swapping references |
| OOP Terminology Reference | Every IB OOP term with mark-scheme definitions for revision |
IA Preparation
| Topic | What you’ll learn |
|---|---|
| JavaFX Basics | Stage, Scene, controls, layouts, event handling, alerts |
| MVC Architecture | Model-View-Controller, separation of concerns, complete example |
| FXML and Controllers | FXML markup, @FXML annotation, FXMLLoader, Scene Builder |
| Multi-Window Apps | Scene swapping, popup windows, shared model, data passing |
| File I/O in Apps | CSV persistence, try-with-resources, load/save patterns |
| Structuring Your IA | Class planning, examiner expectations, MVC checklist, incremental build |
Abstract Data Types (HL)
Building data structures from scratch – nodes, references, and the theory behind the tools.
| Topic | What you’ll learn |
|---|---|
| What Are ADTs? | Interface vs implementation, static vs dynamic, core operations, ADT as a contract (HL) |
| Linked Lists | Node class, singly linked list, traversal, insertion, deletion, search (HL) |
| Ordered Linked Lists | Sorted insertion, early-termination search, ordered vs unordered trade-offs (HL) |
| Doubly Linked Lists | prev + next references, bidirectional traversal, O(1) deletion, circular variant (HL) |
| Stacks from Scratch | Building a stack with linked list nodes, push/pop internals, bracket matching (HL) |
| Queues from Scratch | Building a queue with linked list nodes, enqueue/dequeue internals, FIFO applications (HL) |
| Binary Search Trees | TreeNode, BST property, recursive insert and search, in-order traversal (HL) |
| BST Operations | Delete (3 cases), tree height, balanced vs unbalanced, pre-order and post-order traversals (HL) |
| Sets and HashMaps | HashSet, HashMap, hashing, collision resolution, load factor, set operations (HL) |
| Choosing the Right Structure | Comparison table, decision flowchart, trade-offs, when to use each structure (HL) |
IB CS Internal Assessment (2027 syllabus)
Guidance for the coursework component – problem specification, planning, system overview, development, and evaluation. Aligned with first assessment May 2027.
| Topic | What you’ll learn |
|---|---|
| Internal Assessment Overview | The five criteria, submission bundle, word counts, video length |
| Guidelines | Language choice, researching alternatives, product suggestions |
| Criterion A: Problem specification | Problem scenario, success criteria, computational context (4 marks) |
| Criterion B: Planning | Decomposition and chronology (Gantt / Agile) (4 marks) |
| Criterion C: System overview | System model, algorithms, testing strategy (6 marks) |
| Criterion D: Development | Techniques, justification, video, testing (12 marks) |
| Criterion E: Evaluation | Evaluate against success criteria, justify improvements (4 marks) |
| Templates | Success criteria and testing strategy starter files |
IB CS Extended Essay (2027 syllabus)
Guidance for the 4,000-word independent research essay. Topic selection, criteria, reflection, and the patterns examiners flag most often. Aligned with first assessment May 2027.
| Topic | What you’ll learn |
|---|---|
| Extended Essay Overview | What the EE is, what you submit, the five criteria, EE vs IA |
| Topic Selection | Topic test, RQ quality test, example questions, what to avoid |
| Research and Writing | Sources, essay structure, word count rules, formatting, literature matrix |
| Criteria A–E in Detail | Mark bands, CS-specific interpretation, EE+TOK points matrix |
| Reflection | Three sessions, RRS, the 500-word reflective statement |
| Timeline | Suggested year-long calendar with CS-specific milestones |
| Common Pitfalls | The 10 patterns examiners flag most often, with fixes |
What’s on each page?
Every content page includes:
- Key Concepts – clear explanations with precise terminology
- Worked Examples – step-by-step solutions you can follow
- Interactive Quizzes – MCQs, trace tables, code completion, bug spotting, output prediction
- Practice Exercises – three levels: Core, Extension, Challenge
- Glossary Tooltips – hover over highlighted terms to see a quick definition and a link to learn more
- Connections – prerequisites and related topics to explore next
Pages marked (HL) are Higher Level only. Use the HL/SL toggle in the sidebar to show or hide HL content.