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:
youtube.com/watch?v=mH0oCDa74t

I was never very good at math in school because my books and my teachers failed to spice the topic enough to make me want to spend more time on it besides what's required to pass the tests 😕

With coding, I could make video games and all sorts of wonderful things. To me, math was just one tool you could apply occasionally to solve a programming problem...

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.

So, where does this rambling take me?

I think math in school could be taught with a focus on important concepts and less focus on *doing* math manually.

For example, the concept of a derivative is fundamental to so many things in physics, economics and electronics... but when was the last time you had to compute a derivative analytically? Or numerically?

Actually, when was the last time you had to use the algorithm we learn in elementary school to multiply two numbers?

Follow

@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.

Sign in to participate in the conversation
Qoto Mastodon

QOTO: Question Others to Teach Ourselves
An inclusive, Academic Freedom, instance
All cultures welcome.
Hate speech and harassment strictly forbidden.