The CS degree you never got
A complete introduction to computer science for self-taught developers.
Written by Tom Johnson
Sound familiar?
Your colleagues casually mention concepts you've never heard of – and you just nod along.
You learn about something important only after it causes a production incident.
CS textbooks are over a thousand pages long. Who has time to read all that?
I know the feeling. I once brought down a system because I didn’t know what a file handle was.
Imposter syndrome is caused by not knowing what you don’t know. The ground feels unsteady because there are so many unknowns lurking beneath it.
I spent five years reading textbooks and watching lectures to fill my knowledge gaps. Then I spent two years condensing everything into…
The Computer Science Book
Everything you need to know, in 250 pages
Ten chapters covering the main areas of a CS degree. I’ve erred on the side of the practical rather than the theoretical – these are the topics and concepts I’ve actually encountered in my programming career.
What’s inside
Modern Operating Systems is 1,136 pages long. Database Systems: The Complete Book is 1,140. TCP Illustrated is 1,060 (just the first volume!). This single volume can never match such textbooks in depth or comprehensiveness.
Instead, I’ve focused on topics and concepts that I’ve encountered in my programming career. These are things I know are important. Ten concise chapters covering:
- Theory of computation – what’s computable and what’s not
- Algorithms and data structures – the building blocks of efficient code
- Computer architecture – how computers actually work
- Operating systems – processes, memory, and file systems
- Networking – how data flows across the internet
- Concurrent programming – threads, locks, and parallel processing
- Distributed systems – building scalable, reliable applications
- Programming languages – how languages work and differ
- Databases – storage, indexing, and queries
- Compilers – from source code to execution
Each chapter is a focused introduction and a launch pad for further study. These are the topics you’ll encounter every single day as a programmer.
This book is an essential read for anyone who felt they missed out on a computer science education. It’s also a great reference guide for graduates.
I particularly liked the further reading sections in each chapter. They’re full of curated resources to guide you in exploring each topic more deeply.
Tom distils each topic beautifully and succinctly. It was a joy to read.
Adrian Booth
Software engineer at Syft
This book covers all the topics I lacked confidence in. Each chapter explained what I needed to know for that topic.
Now I feel like I can understand discussions and if I need to dive deeper into anything, I have a solid base to start from.
The book isn’t just for theoretical interest. I’ve been able to apply some of the content to my day to day work. I really recommend this book.
John Whiles
Software engineer at Contentful
- PDF, ePub, and Kindle formats
- Free updates when new editions release
- 30-day money-back guarantee
Print edition coming soon with the Second Edition launch.
Second Edition: Now with AI
Three new chapters for the age of machine learning
Machine Learning
From linear regression to neural networks. The math and intuition behind how machines learn from data.
Deep Learning
CNNs, RNNs, and transformers. How modern AI systems process images, text, and sequences.
Large Language Models
How GPT and Claude actually work. Attention, tokenization, and the architecture behind the AI revolution.
Buy now and get V2 free when it launches
Get the book - $29or get notified when V2 launches:
No spam. Unsubscribe anytime.
Free Articles & Tutorials
Deep dives into CS topics that complement the book.
How NAT traversal powers video calls
You're behind NAT. Your colleague is behind NAT. Neither has a public IP. So how does video data flow directly between you? A pugilistic account of STUN, hole punching, and a clever fallback called TURN.
How interrupt handlers work
Press a key and your CPU jumps to attention. It saves everything it was doing, handles your keypress, then resumes exactly where it left off. This is how hardware demands attention.
What is an API?
One of the joys of studying computer science is spotting a familiar concept in new surroundings. It’s a wonderful “aha!” moment as …
Get Chapter 1 free
Enter your email and I'll send you Chapter 1 (Theory of Computation) as a PDF.
No spam. Unsubscribe anytime.
If you have any questions, please feel free to get in touch: tom@thecomputersciencebook.com.