Working on my platformer, I came across the inevitable problem of collision detecting. This sucks so hard because lately I've been just winging it with basic theorems and such. I came along the Separation Axes Theorem which checks the collision between two convex polygons, which is exactly what I needed. The makers of N, metanet, have provided a sophisticated tutorial on how to accomplish such a task with the SAT.
source: http://www.metanetsoftware.com/technique/tutorialA.html