Roadmaps library Foundations for security Start here

Foundations of computer science

Programming, the tools every developer uses, data structures, and how computers and networks really work.

Time: 31–40 weeks

Browse all roadmaps

Foundations for security

Cybersecurity & AI security roadmaps55

Core domains6
Infrastructure5
Data protection4
Engineering and product5
Defensive security6
Offensive security7
GRC and audit7
AI security7
Specialised and emerging8

Certifications8

Time
31–40 weeks
Leads to
Every other path

Anyone starting out, or anyone who learnt to code from tutorials and has gaps.

  1. Stage 1: Learn to program , 6–8 weeks

    What to learn

    • Variables, conditions and loops
    • Functions
    • Lists and dictionaries
    • Reading error messages
    • Debugging

    Free resources

    Build: A small command-line program you design yourself, such as an expense tracker that saves to a file.

    Move on when: You can write a 100-line program without following a tutorial.

  2. Stage 2: The terminal, Git and Linux , 3–4 weeks

    What to learn

    • Shell commands and pipes
    • Files and permissions
    • Git commits, branches and merges
    • GitHub
    • A code editor

    Free resources

    Build: Put every program you have written on GitHub, each with a short README.

    Move on when: You can work in the terminal without a mouse and fix a merge conflict.

  3. Stage 3: Data structures and algorithms , 8–10 weeks

    What to learn

    • Big-O notation
    • Arrays, linked lists, stacks and queues
    • Hash tables
    • Trees and graphs
    • Sorting, searching and recursion

    Free resources

    Build: Write your own hash table and a graph search (BFS and DFS), with tests.

    Move on when: You can explain why a dictionary lookup is fast and choose the right structure for a problem.

  4. Stage 4: How computers and networks work , 8–10 weeks

    What to learn

    • Logic gates to CPU
    • Memory and processes
    • Operating systems
    • TCP/IP, DNS and HTTP
    • Concurrency basics

    Free resources

    Build: A tiny web server written with raw sockets that serves a page to your browser.

    Move on when: You can explain everything that happens between typing a web address and seeing the page.

  5. Stage 5: Math and databases , 6–8 weeks

    What to learn

    • Logic and proofs
    • Sets, counting and probability
    • Relational databases
    • SQL queries and joins
    • Designing tables

    Free resources

    Build: Design a database for a small library or shop and answer 20 questions about it in SQL.

    Move on when: You can write a query with joins and grouping, and reason about a simple probability.

Back to all paths

Last reviewed: . Found a broken link, or want a path added? Contact