The Internet for web developers: protocols
Protocols are the fundamental concept underpinning computer networking.
Deep dives into CS topics that complement the book.
Protocols are the fundamental concept underpinning computer networking.
Everything you need to know about the Internet to be an awesome web developer
The core idea of The Computer Science Book is that computing is a teetering tower of abstraction. By understanding the design and function of the levels below, we can more intuitively understand the behaviour of the system. Asynchronous programming in JavaScript is an excellent example of this.
Confused by callbacks and promises? Gain confidence by learning how JavaScript actually works under the hood.
How the processor and operating system work in tandem to protect the system.
Arrays look simple, but their memory layout explains both their speed and their awkwardness. Here's how contiguous storage makes indexing fast.
Turing machines are the cleanest way to say what computation is. Here's what they are, why Turing introduced them, and why they still matter.
The 0x prefix marks a hexadecimal number. Here's why hex maps so neatly onto bits and bytes, and how to read it without treating it as magic.
A practical self-study guide for developers who want the useful parts of computer science without trying to recreate a whole degree from scratch.