KNOWLEDGE MAP

CS knowledge map

Select a topic to explore its objectives, concepts and prerequisites.

TIER 0

Mathematics and logic

Discrete Mathematics, Logic, and Proof

Describe discrete structures using sets, relations, logic, proof, and induction.

Read lesson

Linear Algebra

Work with multidimensional structures through vectors, matrices, linear maps, eigenvalues, and decompositions.

Probability and Statistics

Model uncertainty with random variables and distributions, then estimate and evaluate quantities from samples.

Calculus and Optimization

Connect rates of change, gradients, the chain rule, convexity, and optimization to machine learning and systems analysis.

TIER 1

Computer science foundations

Programming Foundations

Understand how programs execute, manage memory, express abstractions, and support debugging.

Read lesson
Read lesson
Read lesson

Algorithms and Data Structures

Study computation and data representation through correctness, complexity, and measured performance.

Read lesson

Computer Architecture

Understand how instructions, processors, pipelines, caches, I/O, and multiple cores execute programs.

Read lesson
Read lesson
Read lesson
Read lesson

Theory of Computation

Explore the limits of computation through formal languages, automata, computability, reductions, and complexity classes.

Operating Systems

Understand resource abstraction and protection through virtualization, concurrency, and persistence.

Read lesson
Read lesson
Read lesson

Computer Networks

Trace communication through layers, addressing, routing, reliability, name resolution, and web protocols.

Databases

Understand persistent data management through data models, indexes, queries, transactions, and recovery.

TIER 2

Systems and security

Concurrency

Reason about races, synchronization, ordering, and progress when executions overlap.

Read lesson

Distributed Systems

Reason about consistency and availability across nodes that can fail independently and communicate with delays.

Programming Languages and Compilers

Connect syntax, semantics, and types to program analysis, transformation, and runtime systems.

Virtualization and Cloud Computing

Understand resource abstraction and operations using virtual machines, hypervisors, containers, and orchestration.

Computer Security

Analyze threat models, authentication, authorization, memory safety, web attacks, isolation, and side channels.

Cryptography

Understand the primitives and assumptions behind confidentiality, integrity, authentication, and key exchange.

Trusted Execution and Confidential Computing

Protect execution and data from an untrusted host and verify execution state remotely.

TIER 3

AI and its execution platforms

Machine Learning

Understand learning from data through loss minimization, generalization, evaluation, and representation.

Deep Learning

Study neural networks, backpropagation, optimization, and major model architectures.

Transformers and Large Language Models

Understand language models through tokenization, self-attention, pretraining, generation, and KV caching.

AI Systems

Connect accelerator execution, inference serving, vector search, RAG, evaluation, observability, and security.