Think DSP is an introductory textbook on Digital Signal Processing in Python presented through Jupyter notebooks and supporting materials.
The book addresses the problem that conventional digital signal processing instruction typically starts with mathematical abstractions like phasors, which can obscure the core ideas. Think DSP takes a programming-first approach, teaching DSP top-down so that practical results appear immediately. By the end of the first chapter, readers can decompose sounds into harmonics, modify them, and generate new sounds using Python code rather than beginning with theory.
This resource suits anyone learning DSP who already knows how to program and prefers hands-on exploration over mathematical formalism. The material works well for self-study or as a supplement to formal coursework. The project maintains two repositories: the original contains the first edition in LaTeX, PDF, and EPUB formats along with example and solution notebooks for each chapter; a newer repository holds a second edition draft with more polished HTML presentation. Readers should choose based on their needs—the original repository supports those with the published first edition, while the newer version offers the most current material.
Development activity shows consistent maintenance of educational materials. The project provides multiple execution paths for readers, including Google Colab for quick browser-based access, Conda for stable local setups, and Poetry for project-local virtual environments. The codebase explicitly avoids recommending certain tools like Spyder based on reported user difficulties. The project maintains both a published first edition and an actively developed second edition draft, indicating ongoing refinement of the pedagogical approach.