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 interpreterEMULATORS: Learn computer architecture by building an NES emulator from the ground upGRAPHICS: Explore image manipulation and algorithmic art through computer graphics projectsMACHINE 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.
From the Publisher
About the Author
David Kopec is an associate professor of computer science at Albright College. He is the author of five programming books, including the Classic Computer Science Problems series, and spent several years as an iOS developer for startups. In addition to his teaching work, David is an avid podcaster and indie app developer with an MS in computer science from Dartmouth and an EMBA from Quantic.
About the Publisher
No Starch Press has published the finest in geek entertainment since 1994, creating both timely and timeless titles like Python Crash Course, Python for Kids, How Linux Works, and Hacking: The Art of Exploitation. An independent, San Francisco-based publishing company, No Starch Press focuses on a curated list of well-crafted books that make a difference. They publish on many topics, including computer programming, cybersecurity, operating systems, and LEGO. The titles have personality, the authors are passionate experts, and all the content goes through extensive editorial and technical reviews. Long known for its fun, fearless approach to technology, No Starch Press has earned wide support from STEM enthusiasts worldwide.
ASIN : B0F1DYLYY8
Publisher : No Starch Press
Accessibility : Learn more
Publication date : September 30, 2025
Language : English
File size : 20.1 MB
Enhanced typesetting : Enabled
X-Ray : Not Enabled
Word Wise : Not Enabled
Print length : 257 pages
ISBN-13 : 978-1718504318
Page Flip : Enabled
Best Sellers Rank: #453,333 in Kindle Store (See Top 100 in Kindle Store) #53 in Open Source Programming #165 in Python Computer Programming #400 in Python Programming
Customer Reviews: 5.0 5.0 out of 5 stars 1 rating

