You know how to write Python. Now master the computer science that makes it work. If you’ve
been programming for a while you may have found yourself wondering about the deeper principles
behind the code. How are programming languages implemented? What does an interpreter really do?
How does the microprocessor execute instructions at a fundamental level? How does a machine
learning algorithm make decisions? Computer Science from Scratch is for experienced Python
programmers who want to fill in those gaps—not through abstract lectures but through carefully
designed projects that bring core CS concepts to life. Understanding these fundamental building
blocks will make you a more versatile and effective programmer. Each chapter presents a
focused hands-on project that teaches a fundamental idea in computer science: INTERPRETERS:
Understand syntax parsing and evaluation by writing a BASIC interpreter EMULATORS: Learn
computer architecture by building an NES emulator from the ground up GRAPHICS: Explore image
manipulation and algorithmic art through computer graphics projects MACHINE LEARNING: Demystify
classification by implementing a simple readable KNN model These projects aren’t about
building tools—they’re structured lessons that use code to reveal how computing works. Each
chapter concludes with real-world context thoughtful extensions and exercises to deepen your
understanding. Authored by David Kopec a computer science professor and author of the popular
Classic Computer Science Problems series this is not a beginner’s book and it’s not a
theory-heavy academic text. It’s a practical code-driven introduction to the essential ideas
and mechanisms of computer science—written for programmers who want more than syntax. If
you’ve been writing Python and are ready to explore the foundations behind computing this book
will guide you there—with clarity depth and purpose.