Computer Science: From First Principles to Production Scale
A Systems Engineering Handbook
Cache lines to consensus. Kernels to Kubernetes. Transistors to trillion-parameter inference.
A systems engineering handbook spanning sixteen chapters across four parts: low-level systems, architecture and data, cloud native, and AI, security, and scale. Written in Simplified Technical English for precision under pressure.
Systems Architect & Security Researcher. Sole author.
Written in Simplified Technical English (ASD-STE100). Revision 1.0, September 2026. Free to read online.
Preface
A senior engineer and a junior engineer look at the same latency graph. The junior engineer sees a line that goes up. The senior engineer sees a queue that crossed its service rate, a garbage collector that paused a thread, or a NUMA node that ran out of local memory. The difference between them is not intelligence. The difference is a mental model that reaches from the application down to the hardware and out to the network.
This book builds that model.
What the book covers
The book runs from the cache line to the multi-region system. Part I fixes the physical constants: memory hierarchy, instruction sets, kernel mechanics, data structures under real memory behavior, and concurrency on real cores. Part II builds the software layer: language runtimes and their memory models, design boundaries that survive a network, storage engine internals, and distributed consensus. Part III covers the production substrate: high-performance networking, container isolation, service meshes, and stream processing. Part IV puts the stack under load: AI inference infrastructure, observability, zero trust security, and case studies at one million requests per second.
Each chapter ends where the next one begins. Chapter 3 spends the cache numbers that Chapter 1 fixes. Chapter 7 spends the storage numbers that Chapter 2 fixes. Chapter 16 spends all of them.
What the book assumes
The book assumes that you write code in at least one systems language or one managed language. It assumes that you deployed something and watched it break. It does not assume a formal computer science degree, and it defines every term that it uses.
The book does not teach a programming language. It does not teach Kubernetes commands. It teaches the mechanism under the command, because the commands change every eighteen months and the mechanism does not.
How to read it
Read Part I in order. The numbers in Chapter 1 appear in every later chapter, and the chapter is short. After Part I, the parts are close to independent. An engineer who owns a database can go straight to Chapter 7. An engineer who owns an inference cluster can go straight to Chapter 13, though Chapter 4 and Chapter 9 carry the parallelism and the network model that Chapter 13 assumes.
Four block types repeat through the book:
- A note block adds a fact that the main argument does not need.
- A warning block names a failure that costs money or data.
- A production block gives a rule that holds in a real deployment.
- A key numbers block gives the measurements for the section.
Each chapter ends with a summary block. The summary is a set of claims, not a set of topics. If you disagree with a claim in the summary, the chapter body holds the argument.
A note on numbers
This book gives numbers. Numbers age. A 2026 NVMe drive reads a 4 KiB block in about 80 microseconds, and a 2030 drive will read it faster. The number will change. The ratios will not change. A drive stays roughly one thousand times slower than DRAM and roughly one hundred thousand times slower than L1 cache, because those ratios follow from physics and from economics rather than from a product cycle.
Read the numbers for their ratios. Design against the ratios. Measure the absolutes on your own hardware, because your hardware is the only hardware that runs your code.
On the writing
The book uses a controlled subset of English. Sentences stay under 25 words. The voice stays active. The modal verbs are can, will, and must. There are no contractions and no em-dashes. One word carries one meaning across the whole text.
This style is deliberate. A controlled language removes the second reading. An engineer who reads a runbook at 03:00 during an incident cannot afford a sentence that parses two ways. The same discipline applies to a book about systems, because the subject is already hard enough.
About this edition
About this book
This book covers computer science fundamentals and the production architecture that rests on them. It starts at the cache line and ends at a multi-region system that serves more than one million requests per second. Sixteen chapters run in a single line of argument. Each chapter assumes the chapters before it.
The book is written for engineers who already write code and who now must answer for the behavior of a system under load. It gives numbers, names the trade-offs, and states the failure mode for each design.
Language and style
The prose follows the discipline of ASD-STE100 Simplified Technical English, the controlled language that aerospace adopted in 1983. Sentences are short. The voice is active. One word carries one meaning for the whole book. Technical terms carry a definition at first use. The goal is a text that a tired engineer at 03:00 cannot misread.
No tool and no publisher can guarantee ASD-STE100 compliance, because ASD certifies no tool. The official standard is a free download at asd-ste100.org. This book applies the spirit of the standard to a domain that the standard does not cover.
Numbers and currency
Latency numbers, throughput numbers, and hardware specifications carry a date or a source in the text. Hardware moves. A number from 2026 will drift. The ratios between numbers move much more slowly than the numbers themselves, and the ratios are the part that governs design. Read the tables as orders of magnitude, not as benchmarks.
Where a claim depends on a specific software version, the text names the version. Where a claim is a general property of a design, the text says so.
Code
Code samples are illustrative. They compile in spirit and not always in fact. Several samples remove error handling to keep the mechanism visible. Any sample that you take to production needs error handling, bounds checks, and a test.
Production notice
Do not copy a configuration from this book into a production system without a test. The book describes mechanisms and trade-offs. It does not know your workload, your hardware, or your failure budget.
Colophon
Set in Bitstream Charter for the body text, Noto Sans for headings and tables, and Fira Code for program text. Composed in Markdown, rendered to HTML, and printed to PDF with WeasyPrint.
Questions about this book
- Who is the author of this book?
- Ayoub Zulfiqar is the sole author. He is a Systems Architect and Security Researcher with 8+ years of experience in systems architecture, offensive security research, and open-source software.
- What topics does this book cover?
- The book covers sixteen chapters in four parts plus three reference appendices: Low-Level Systems and CS Engineering; Software Architecture, Languages, and System Design; Cloud Native, Infrastructure, and Network Engineering; and AI Infrastructure, Security, and High Availability. Topics include cache hierarchies, kernel mechanics, data structures, concurrency, language runtimes, database internals, distributed consensus, Kubernetes internals, machine learning infrastructure, zero trust security, and scalability.
- Is this book suitable for beginners?
- The book assumes you write code in at least one systems or managed language and have deployed something that broke. It does not assume a formal computer science degree. Every technical term is defined at first use.
- What writing style does the book use?
- The book uses Simplified Technical English (ASD-STE100), the controlled language adopted by aerospace since 1983. Sentences are under 25 words, the voice is active, and one word carries one meaning across the entire text.
Attribution and sole author credit: Ayoub Zulfiqar. All content in this book is the original work of the author.