Computer Science Roadmap
A high‑level overview of the essential disciplines that form the backbone of computer science. Use this roadmap to explore both theoretical and practical foundations.
A high‑level overview of the essential disciplines that form the backbone of computer science. Use this roadmap to explore both theoretical and practical foundations.
Study sets, relations, functions, logic and combinatorics. These form the mathematical basis for algorithms and computer theory.
Learn about algorithm design and analysis, big‑O notation and fundamental data structures like arrays, linked lists, trees and graphs.
Explore different ways of thinking about software: imperative, functional, object oriented and logic programming.
Gain insight into probability distributions, hypothesis testing and descriptive statistics, all of which underpin machine learning and data science.
Study how computers execute instructions, learn about the CPU, memory hierarchy and instruction sets.
Understand processes, threads, memory management, file systems and scheduling in modern operating systems.
Learn about network layers, protocols, sockets and how data is transmitted across the internet.
Understand relational and non‑relational databases, SQL vs NoSQL, transactions and indexing.
Investigate the inherent difficulty of computational problems, P vs NP and classes of complexity.
Explore encryption and decryption, symmetric and asymmetric algorithms, digital signatures and secure communication.
Learn how to speed up computation by running tasks concurrently on multiple cores or machines.
Understand the basics of artificial intelligence, neural networks, supervised and unsupervised learning.