For a while now I’ve been meaning to note a couple links that may be of interest. Some computer science undergrads are familiar with a happy-little purple book by Abelson and Sussman titled The Structure and Interpretation of Computer Programs (SICP, pronounced “sick-pea”) . For those of you who don’t know, if you click on that last link, you’ll notice the entire text is available online, which is great because this book is a superb reference (at least it has been for me). SICP is known for its usage of a LISP-like variant: Scheme to introduce a precocious individual to computer science.
If you can get through that and an introductory classical mechanics course, then why not learn about classical mechanics vis-a-vis Scheme? Also available online, The Structure and Interpretation of Classical Mechanics (SICM or “sick-’em”, I presume).
 Sadly, most schools that adopt MIT’s SICP program probably teach the course with some pretension as the first (or one of the first) computer science course for undergrads. While the upper-echelon students enjoy and potentially fly through the material, most well-intentioned and eager students seem to become disenchanted with the complexity and challenge of the material. I appreciate the rationale for teaching this sooner than later: this book is a great intro to real computer science, not for-loops and try-catch statements. That being said, perhaps a lighter introduction with the book is in order, because even the best of students will just scrape at the surface of the cool stuff in it.