Roadmap · Step 1 of 8

Computer Basics roadmap

How computers, the terminal, Git and networks work, plus your first data structures. Start here if you are new. Read the series from top to bottom, and each series from its first lesson to its last.
Level
Beginner
Series
5
Lessons
92
Cost
Free
Loading your progress…

Start here

  1. Step 1

    Computer Basics

    How computers, the terminal, Git and networks work, plus your first data structures. Start here if you are new.

    Beginner5 series92 lessons
    CS Foundations8 lessonsOpen series →
    1. 0How a Computer Runs Your Program
    2. 1Memory, CPU Caches and Why Array Order Matters
    3. 2Floating Point: Why 0.1 + 0.2 Is Not 0.3
    4. 3Unicode, UTF-8 and Strings That Lie
    5. 4Binary, Endianness and Bit Tricks
    6. 5Combinatorics and Probability for Interviews
    7. 6P, NP and Hard Problems: What to Say in an Interview
    8. 7String Searching: Naive, KMP, Rabin-Karp and Z
    Linux & Shell9 lessonsOpen series →
    1. 0The Terminal, the Shell and the Linux File System
    2. 1Users, Permissions and Ownership
    3. 2Processes, Signals and Job Control
    4. 3Pipes, Redirection and Text Tools: grep, sed, awk, find and xargs
    5. 4Shell Scripting: Variables, Conditions, Loops and Functions
    6. 5SSH, Networking Commands and Transferring Files
    7. 6Packages, Services, Cron and systemd
    8. 7Disks, Memory, Logs and Troubleshooting a Slow Server
    9. 8Linux and Shell Interview Questions With Model Answers
    Git & GitHub6 lessonsOpen series →
    1. 0The Mental Model: Snapshots, Commits and Branches
    2. 1The Daily Loop: Status, Add, Commit, Diff and Log
    3. 2Branches, Merging and Conflicts
    4. 3Remotes, Pull Requests and Code Review
    5. 4Undoing Things Safely: Restore, Reset, Revert, Reflog and Friends
    6. 5Rebase, Clean History and Team Workflows
    Networking for Developers9 lessonsOpen series →
    1. 0How the Internet Works: Layers, Packets and Addresses
    2. 1IP Addresses, Subnets, NAT and Routing
    3. 2TCP and UDP: Connections, Reliability and Congestion
    4. 3DNS: How Names Become Addresses
    5. 4HTTP/1.1, HTTP/2 and HTTP/3
    6. 5TLS and Certificates: How HTTPS Really Works
    7. 6Load Balancers, Proxies, CDNs and Firewalls
    8. 7WebSockets, Server-Sent Events and Real-Time Networking
    9. 8Debugging Network Problems and Networking Interview Questions
    DSA60 lessonsOpen series →
    1. 1What a Program Is, and How to Run One
    2. 2Variables and Data Types
    3. 3Conditions: if / else
    4. 4The for Loop
    5. 5The while Loop
    6. 6Nested Loops and Patterns
    7. 7Functions
    8. 8Arrays
    9. 9Strings
    10. 10Objects, Map and Set
    11. 11How to Read a Problem
    12. 12Big-O: Counting the Steps
    13. 13Basic Maths for DSA
    14. 14Recursion Basics
    15. 15Basic Hashing
    16. 16Selection, Bubble and Insertion Sort
    17. 17Merge Sort
    18. 18Quick Sort, and When to Just Use .sort()
    19. 19Array Traversal Problems
    20. 20Prefix Sum
    21. 21Two Pointers
    22. 22Sliding Window: Fixed Size
    23. 23Sliding Window: Variable Size
    24. 24Kadane's Algorithm
    25. 252-D Arrays and Matrices
    26. 26Two Sum and “Seen Before?”
    27. 27Frequency Maps and Grouping
    28. 28Binary Search on a Sorted Array
    29. 29Binary Search on the Answer
    30. 30String Patterns
    31. 31Substrings and Windows
    32. 32Recursion Trees
    33. 33Subsets and Permutations
    34. 34Backtracking
    35. 35Building a Linked List
    36. 36Reverse and Fast/Slow Pointers
    37. 37Merging and Cycle Problems
    38. 38Stacks
    39. 39Queues and Deques
    40. 40Monotonic Stack
    41. 41Binary Trees and Traversals
    42. 42Level Order (BFS) on Trees
    43. 43DFS on Trees
    44. 44Binary Search Trees
    45. 45Lowest Common Ancestor and Building Trees
    46. 46Heaps and Top-K
    47. 47Greedy Algorithms
    48. 48Interval Problems
    49. 49What a Graph Is
    50. 50Graph Traversal: BFS and DFS
    51. 51Topological Sort
    52. 52Shortest Paths
    53. 53Union-Find
    54. 54Dynamic Programming From Recursion
    55. 551-D Dynamic Programming
    56. 562-D Dynamic Programming
    57. 57DP on Strings
    58. 58Tries and Bit Manipulation
    59. 59The Interview Playbook
    60. 60Your Revision Plan