Yes, I completely agree. One thing I'll add as an example; I used programming as a way to learn about mathematical concepts too. I made a program to render an image of the Mandelbrot set, which helped me learn both some new things in JavaScript (what I was using) and mathematics (complex numbers and limits). You'll probably be able to find a similar sort of project for your son.