Ruby > Junior High Math

I seriously feel that the way that we teach kids math is truly awful.

Lately, I have been practicing Ruby through Project Euler. Project Euler is a site that gives you complex math problems that you can only practically solve through creating algorithms to do it for you.

For example:

The prime factors of 13195 are 5, 7, 13 and 29.
What is the largest prime factor of the number 600851475143 ?


145 is a curious number, as 1! + 4! + 5! = 1 + 24 + 120 = 145.
Find the sum of all numbers which are equal to the sum of the
factorial of their digits.

You would have to be stupid to actually do all of that yourself. Mainly, it would be tedious and boring. I’m having a lot of fun doing it this way. It actually feels like a mental exercise; kind of like a hardcore session of yoga or a 100-mile bike ride when you are out of shape.

These exercises are very challenging and fun. Keep in mind, I do almost no math at all in my day-to-day life. I was never bad at math per se. Wasn’t good either. I just hated it. I stopped signing up for the “advanced” math classes at about Algebra II in the eighth grade. I was more content to just coast through and daydream and write my internet-distributed jokes in my notebook.

Interestingly, this was the same year that I read Hyperspace by Michio Kaku. I was reading a goddamn book about advanced theoretical math, but I couldn’t bring myself to give a shit about writing out algebra problems over and over again to make the grade.

Now ask yourself, adult. What would you rather do? Would you rather do busywork and perform the same calculation by hand for several hours, or read about how Riemann came up with his own type of geometry?

I think that if any educator had to really think about that sort of question, schools would feel different for kids. This is how education just burns you out. For me, this shift in the eighth grade was the beginning of the end of me giving a shit in school. I really wish that I had a specific suggestion for how math should be taught, but this quote (via Neil DeGrasse Tyson’s testimony before Congress) from Antoine de Saint Exupery comes to mind.

If you want to build a ship, don’t drum up the men to gather wood, divide the work and give orders. Instead, teach them to yearn for the vast and endless sea…” 

As I was saying at the beginning, by making computers do the tedious work that I would otherwise do with a dull pencil, I feel like I am actually learning math for the first time. I’m trying to make the Miller-Rabin prime test or the Seive of Eratosthenes make sense in Ruby, and to little avail. I am actually learning, and after a long day of work, I can’t wait to come home and try more problems. For kids that are just learning math, isn’t this a better way to go about it? Rather than making kids do computers’ work, I think that teaching them to get computers to do the work is a better use of time. In Estonia, a place that really interests me as a future tech superpower, kids are learning to code from first grade. They are the ones actually thinking ahead. Their kids won’t be iterating themselves.

Comments are closed.