All Topics
Everything on EduCS.me in one place. Click any topic to jump straight in.
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 |
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 |
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 |
| Practice Library | Every Hardware practice question, filtered by difficulty and marks |
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 |
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) |
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 |
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) |
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 |
JavaFX Cookbook
Plug-and-play JavaFX recipes for building a desktop application. Each recipe is a small, generic pattern you adapt to your own project. JavaFX is not an examined topic; these pages are practical build tooling, useful for an IB IA or any Java GUI project.
| Page | What you’ll learn |
|---|---|
| Cookbook Overview | What the cookbook is, how to use it, the full recipe list |
| Start here: how every recipe fits together | The two places you edit, and the fx:id and onAction links. Read first |
| Controlling UI state | Enable/disable controls, focus, reacting to Enter |
| Dialogs and feedback | Information and confirmation dialogs, catching bad input |
| Input controls | Radio buttons, checkboxes, combo boxes, date pickers, numbers-only fields |
| Showing data in a table | TableView, filling it, reading the selected row, live filtering |
| Time, progress, and animation | Timeline beats and progress bars |
| Files and persistence | FileChooser, saving and loading text, stepping up to SQLite |
| Exporting and sharing | CSV export, email from a button, opening a web page |
| App structure and navigation | initialize, menus, quitting, second windows, passing data, tabs, CSS |
| Charts and graphs | Line, bar, and pie charts, and updating them |
| Images and media | Showing images, image buttons, sound |
| Drawing and animation | Canvas drawing, mouse handlers, game loops |
| Keep the UI responsive during slow work | Background threads and Task so the window does not freeze |
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 |
Databases
The relational model, design, SQL, and (HL) alternative approaches.
| Topic | What you’ll learn |
|---|---|
| Databases Layer (overview) | What the layer covers and how it fits together |
| Relational Database Fundamentals | Tables, records, fields, keys; benefits, limitations; object-relational impedance mismatch |
| Database Schemas | Conceptual, logical, physical schema layers |
| Entity-Relationship Diagrams | ERDs with cardinality and modality, junction tables for M:M |
| Data Types and Keys | INT, DECIMAL, VARCHAR, DATE, BOOLEAN; primary, foreign, composite, concatenated keys |
| Normalisation | 1NF, 2NF, 3NF; functional/partial/transitive dependencies; constructing 3NF; denormalisation |
| SQL Queries | DDL vs DML; SELECT/JOIN/WHERE/GROUP BY/HAVING/ORDER BY; aggregates (HL) |
| SQL Updates | INSERT, UPDATE, DELETE; effect of indexed columns on performance |
| Transactions and Views (HL) | ACID, BEGIN/COMMIT/ROLLBACK; virtual vs materialised views |
| Alternative Databases (HL) | NoSQL, cloud, spatial, in-memory database approaches |
| Data Warehouses (HL) | Warehouse objectives, OLAP, data mining techniques |
| Distributed Databases (HL) | Partitioning, replication, transparency, fault tolerance, scalability |
| Practice Library | Every Databases practice question, filtered by difficulty and marks |
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 |
Ethics & Implications
The social, ethical, and legal dimensions of computing. Both pages build the “Discuss” skill: weigh both sides and reach a reasoned conclusion.
| Topic | What you’ll learn |
|---|---|
| Ethics of Machine Learning | Accountability, fairness, bias, consent, privacy, security, environmental and societal impact, transparency; training-data bias; online communication ethics (A4.4.1) |
| Computing in Daily Life | Pervasive computing, surveillance, the digital divide, equity, emerging tech (quantum, AR/VR, pervasive AI), reassessing ethical guidelines (A4.4.2) |
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 | IA Proposal Form (.docx) and Testing Strategy Template (.docx) downloads |
| Common mistakes (and how to avoid them) | Pitfalls that pull marks down most often, grouped by criterion, with what to do instead |
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 |
IB CS Case Study (2027 syllabus)
The pre-seen scenario for Paper 1 Section B, sat by both SL and HL. The 2027 edition is Generative AI for image creation (Visionary Studios). Pages marked (HL) are Higher Level only.
| Page | What you’ll learn |
|---|---|
| Case Study Overview | What the case study is, the yearly cycle, and how it is examined |
| 2027: Generative AI | The scenario, exam shape, and the SL/HL depth ladder |
| Image Generation Techniques | Text-to-image, conditional, and unconditional generation |
| Diffusion Models | Noise, denoising, DDPM, and the CNN denoiser |
| GANs (HL) | Generator, discriminator, adversarial dynamic, mode collapse |
| Hybrid Models (HL) | VAEs, flow-based models, latent space, and why to combine |
| Evaluating Models | The five factors: quality, efficiency, stability, scalability, consistency |
| Ethics and Law | Dataset curation and IP, bias and fairness, transparency and disclosure |
| Glossary Trainer | Every term you must define and apply, SL and HL sets |
| Challenges and Exam Prep | The four challenges, markbands, answer scaffold, and worked Section B questions |
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.