The awesome visualizations of 3blue1brown, along with the jargon-free narration make math accessible to me.
Here''s group theory made digestible and actually quite entertaining:
https://www.youtube.com/watch?v=mH0oCDa74tE
While in high-school, I bought a 16bit A/D converter for my Amiga, but it had some annoying noise when capturing at low sample rate like 8kHz.
So I wanted to capture at 44kHz, then low-pass filter the sample and then downsample.
The math teacher told me that I needed the Fourier Transform to do that. And the electronics teacher gave me a book called Numerical Recipes which dedicated a chapter on the FFT.
This is perhaps the most advanced math I had to use in my entire career as an engineer.
Not that I could fully understand the math behind the Fourier Transform... but I could copy the pseudo-code from the book and make it work in C.
It worked, but it was slow. Too slow on my 25MHz 68040. Code written by mathematicians is rarely efficient, and there was little I could do to optimize it further with my limited understanding of the problem.
Some time later, I found an assembly routine implementing a 256-point FFT. Perfect!
Adapting that was easier than writing my own from scratch, and it was *FAST*!
I didn't really need to study all that math after all. I just needed to get better at finding and integrating other people's code. Ah, the power of Free Software! 😊
Nowadays all sort of complex algorithms come in libraries, and thus you don't really need advanced math to be a professional developer.
The most math I've done this year is compute a standard deviation on same boot timing samples in a spreadsheet. But halfway through, my manager suggested I could use the existing STDEV() function 😅
So it's a myth that programmers need to do math. However, they need to know enough of the jargon to search for existing tools and know when to apply them.
@codewiz A LOT of people learn best by doing.
Of course where to focus that energy is a different question. Now that computers are ubiquitous and we have calculators in our pockets always, the choice of what to focus on should probably shift to a higher level.
And yet, learning how to multiply numbers by hand does help with understanding how numbers work and what multiplication means.
It also helps with being able to estimate or even calculate in your head, which can be a very useful skill.