HACKER Q&A
📣 non-entity

Learning DSP witha software development background?


I notice that DSP is something normal taught in an electrical engineering background, however I see it in job listings for lower level software development roles.

I'm a software develope, both professionally and as a hobbyist for years. I have no formal education whatsoever, and am weak on mathematics, especially in subjects you would find in an engineering program as prerequisites to signals courses.

Is there a good way for someone with a software background to learn DSP, like a course taking that background into consideration? Would I have to work through the full equivalent of the math taught in a university setting? I don't mind paying for something as long as it's not several thousand dollars, but I dobt want to purchase something and realize in way over my head with no hope.


  👤 Arjuna Accepted Answer ✓
I would like to recommend "The Scientist and Engineer's Guide to Digital Signal Processing" by Steven W. Smith. It is free to read online or download at https://www.dspguide.com/

It is suited for the reader that does not possess a heavy mathematical background; in fact, the author writes:

"This book was written for scientists and engineers in a wide variety of fields: physics, bio-engineering, geology, oceanography, mechanical and electrical engineering, to name just a few. The goal is to present practical techniques while avoiding the barriers of detailed mathematics and abstract theory. To achieve this goal, three strategies were employed in writing this book:

First, the techniques are explained, not simply proven to be true through mathematical derivations. While much of the mathematics is included, it is not used as the primary means of conveying the information. Nothing beats a few well written paragraphs supported by good illustrations.

[...]

Second, complex numbers are treated as an advanced topic, something to be learned after the fundamental principles are understood.

[...]

Third, very simple computer programs are used."


👤 efm
Alan Downey's Think DSP : https://greenteapress.com/wp/think-dsp/ Free, python, code examples in Juypter notebooks.

👤 p1esk
however I see it in job listings for lower level software development roles.

Is that the only reason you’re interested in DSP?