Cure your imposter syndrome
Jump start your career with the complete guide to computer science for self-taught developers.
Written by Tom Johnson
Let’s build your career’s foundations.
For a lot of developers, the number of things to learn can feel never-ending. Particularly so if, like me, you are self-taught.
As well as keeping up with all the new technologies, tools and processes, we need to find time to learn all that foundational computer science knowledge. It’s awkward when colleagues casually refer to some concept we’ve never even heard of.
Even worse is when we don’t hear about an important concept until it’s too late. I didn’t learn what a file handle was until I wrote a logging utility that used them all up and brought down a system!
All of this leads to imposter syndrome: the gnawing fear that – any day now – our colleagues will realise we don’t have a clue what’s going on.
I firmly believe that imposter syndrome is caused by not knowing what you don’t know. The ground underneath us feels unsteady because there are so many unknowns lurking there.
Imagine having a solid grasp of computer science. You’d confidently use all those terms your colleagues use. You’d fearlessly take on new tasks. You’d understand your work on a deeper level and more easily spot opportunities to apply ideas and innovate.
We can cure imposter syndrome and build a solid foundation for your career. I know because I taught myself all the computer science needed to land an engineering role at a FAANG.
But I did it the hard way: I spent over five years reading huge textbooks and watching hours of lectures, always searching for the most valuable details in a sea of information.
Let me show you an easier way. I’ve spent almost two years condensing all of my reading, studying and work experience into…
The Computer Science Book
A complete introduction to computer science in one book
All of your foundational knowledge in a single volume. It’s the only computer science book you need to succeed!
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.
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.
Software engineer at Contentful
The knowledge you need to succeed.
The Computer Science Book is not like other textbooks. It’s a highly selective, single-volume introduction to the whole of computer science.
I’m not promising comprehensiveness. I’m promising a complete, practical introduction to the knowledge you need to be a great programmer.
Before adding even the tiniest thing I challenged myself: “do people need to know this?”. Only the essential made the cut. The result is ten concise chapters. Each one functions both as a standalone introduction and a launch pad for further, independent study.
In 250 pages we’ll cover:
- Computer architecture
- Operating systems
- Algorithms and data structures
- Computer networking
- Concurrent programming
- Theory of computation
- Programming languages
- Compilers and interpreters
- Distributed systems
The first chapter is available for free as a PDF download here. No sign up required.
I’m immensely grateful to all the authors and educators who have released their material online for free. As my way of paying it forward, The Computer Science Book is available to read for free online here in HTML format.
Can I buy a print copy?
Many people have been asking for a print copy! One is in the works but I have no release date yet.
Extra online content
From time to time I post extra content that couldn’t fit into the first edition. It ranges from deep dives to my musings on computing.
Sign up to the mailing list to receive new content in your inbox. No spam!