Skip to main content
Books, videos, and music - all free from your public library!
LoginSign Up

Footer

Hoopla logo, Go to homepage
  • For Patrons
  • For Libraries (opens in new window)
  • For Vendors (opens in new window)
  • Facebook (opens in new window)
  • X (opens in new window)
  • Instagram (opens in new window)
  • YouTube (opens in new window)
  • TikTok (opens in new window)
  • LinkedIn (opens in new window)

Our Company

  • Our Story
  • Get Hoopla for your Library (opens in new window)
  • Get your content on hoopla (opens in new window)
  • Join our team (opens in new window)
  • Accessibility Statement

Our Content

  • Audiobooks
  • Ebooks
  • Movies
  • Television
  • Comics
  • BingePasses
  • Music
  • The Loop Blog

Help

  • Help Center
  • Submit Feedback
  • Facebook (opens in new window)
  • X (opens in new window)
  • Instagram (opens in new window)
  • YouTube (opens in new window)
  • TikTok (opens in new window)
  • LinkedIn (opens in new window)
  • Download on the App Store (opens in new window)
  • Get it on Google Play (opens in new window)
  • Available at Amazon Appstore (opens in new window)
© 2026 Midwest Tape, LLC. All rights reserved. Privacy Policy | Terms of Use
  • Hoopla logo
    Powered by Hoopla
  • Browse
  • My Hoopla
  • Log In
  1. Navigate Home
  2. Ebooks
  3. Computer Science From Scratch

EBOOK

Computer Science From Scratch

Building Interpreters, Art, Emulators and ML in Python

David Kopec
(0)
sign up
Pages
280
Year
2025
Language
English
Publisher
No Starch Press

About

Test and sharpen your Python skills with seven guided projects that explore popular computer science challenges.

Computer science can feel unapproachable for those without a formal CS education. Fun Computer Science Projects in Python pulls back that curtain, illuminating several foundational CS concepts through creative, hands-on projects.

Each of the 7 projects is presented in a code-centric tutorial that gently introduces topics like interpreters, emulators, and machine learning without getting bogged down by complex theory. The projects showcase advanced Python language features and clean code principles while exploring interesting algorithms.

Chapters conclude with discussions of real-world applications of the topic and proposed exercises to extend the reader's skills. Covers Python 3.x Introduction

Part I: Interpreters

Chapter 1: The Smallest Possible Programming Language

Chapter 2: Writing a BASIC Interpreter

Part II: Computational Art

Chapter 3: Retro Image Processing

Chapter 4: A Stochastic Painting Algorithm

Part III: Emulators

Chapter 5: Building a CHIP-8 Virtual Machine

Chapter 6: Emulating the NES Game Console

Part IV: Super Simple Machine Learning

Chapter 7: Classification with K-Nearest Neighbors

Chapter 8: Regression with K-Nearest Neighbors

Afterword

Appendix: Bitwise Operations David Kopec is an associate professor of computer science at Champlain 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.

Related Subjects

  • Computer Science
  • Computers
  • Adult Nonfiction
  • Python
  • Languages
  • Open Source
  • Programming

Artists

David KopecAuthor