Found in 2 comments on Hacker News

tokenadult · 2009-03-17 · Original thread

You are fourteen years old. You probably haven't had much good math instruction yet. One of my favorite authors on school mathematics wrote, "The proper thing for a parent to say is, 'I did badly at mathematics, but I had a very bad teacher. I wish I had had a good one.'" W. W. Sawyer, Vision in Elementary Mathematics (1964), page 5. You can find a good teacher by finding good books about mathematics, even if you have never had a good teacher. Many working programmers haven't either, which is why some of them don't see the need for much math background to become a good programmer.

You are young enough to learn a lot of math and to learn a lot of programming. Learning both hand-in-hand will make you a better programmer. One good book that combines both subjects is Approaching Precalculus Mathematics Discretely by Philip G. Lewis

http://www.amazon.com/Approaching-Precalculus-Mathematics-Di...

http://mitpress.mit.edu/catalog/item/default.asp?tid=9168...

which alas appears to be out of print, but may be available as a used book or from a library. It teaches key concepts of school mathematics while also teaching functional programming with the Logo dialect of Lisp.

A great place to hang out online to learn math and programming is the Art of Problem Solving Forum, especially its subforum on computer science,

http://www.artofproblemsolving.com/Forum/index.php?f=331

which is moderated by a brilliant young man I know who is not a lot older than you are.

http://www.alice.org/

I know programmers in my town who have used that for learners in the same age range you are considering.

My son had a distance learning course (which, alas, seems no longer to be offered) based on the book Approaching Precalculus Mathematics Discretely

http://www.amazon.com/Approaching-Precalculus-Mathematics-Di...

that was a good example of using functional programming (in Logo) to investigate mathematics. The book appears to not be in print anymore, but still available from some booksellers, and is a good glimpse at what some high schoolers can learn if they have enough mathematical background.

The local programmers I know who teach classes for that age group are now mostly doing Python courses, as there seem to be quite a few good introductory texts on Python, or else teaching Ruby.