The Computer Science Book

1 min read Original article ↗

The Computer Science Book contains ten chapters covering the main areas of a computer science degree. Together they give you a comprehensive introduction to computer science, without the fluff.

Each chapter is focused on delivering the essential knowledge that will help you improve as a developer. I've erred on the side of the practical rather than the theoretical. Each chapter also includes a further reading section for independent study.

  • Theory of computation Preview

    Automata, computability, and algorithmic complexity

  • Algorithms and data structures Preview

    Arrays, linked lists, hash maps, sorting, and searching

  • Computer architecture Preview

    Binary, logic gates, processors, and memory hierarchy

  • Operating systems Preview

    Processes, memory management, and file systems

  • Networking Preview

    TCP/IP, DNS, HTTP, and how the internet works

  • Concurrent programming Preview

    Threads, locks, and asynchronous programming

  • Distributed systems Preview

    CAP theorem, consistency models, and consensus protocols

  • Programming languages Preview

    Paradigms, type systems, and language design

  • Databases Preview

    SQL, indexes, B-trees, and concurrency control

  • Compilers Preview

    Parsing, ASTs, code generation, and optimization