“The thing to keep in mind is that all these “basics” were once cutting-edge research. And the people who got to the bottom of these matters were not trivial idiots. They were great masters. The more you look at this material in this way, the more you’ll find you can tolerate it in good humor, and without fearing its deadening effects on your strange, wild mind.”
— Laurens Gunnarsen
Introduction to Real Analysis(the Lebesgue integral — warning: hilarious)
An Illustrated Handbook of Theoretical Physics: Introduction to Mathematical Structures
All of the Mathematics You Missed (And Need To Know For Graduate School) (not free)
The Algebra II Lectures of the Poetic Kazuya Kato
A great resource for learning Haskell for experienced programmers: Haskell Fast & Hard.
Category Theory & Programming (includes kitten pictures and bad puns)
Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire
When is one thing equal to another thing?
Algebra: Chapter 0 (I highly recommend doing the exercises, it goes from set theory to basic homological algebra)