Cure your imposter syndrome

Jump start your career with the complete guide to computer science for self-taught developers.

Author profile image thumbnail

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

Book cover image

All of your foundational knowledge in a single volume. It’s the only computer science book you need to succeed!

Adrian Booth

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

John Whiles

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

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:

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.

Author profile image

Hi, I'm Tom!

My developer journey began at the highly selective Founders & Coders bootcamp in London.

I was always very conscious that, as a bootcamp graduate, I was at such a disadvantage to computer science graduates. I spent years voraciously reading every textbook I could get my hands on, constantly seeking out delicious new computer science knowledge.

All that effort paid off in the form of varied and challenging developer roles at rapidly growing start-ups and global banks. Eventually I landed up as a Front End Engineer in Amazon’s Prime Video team.

The Computer Science Book is the culmination of years of self-study and practical experience. My aim is to make computer science more accessible to people who, like me, need to learn on the job – and quickly!

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!

* indicates required

If you have any questions, please feel free to get in touch: book @

You can also find me on Github or on Twitter.