Sometimes, stacking divs and fiddling with CSS just doesn't cut it. The canvas tag gives us an escape hatch - an infamous blank rectangle. Unlike applets and Flash, canvas is orchestrated by the same javascript you already use to run your web site. Canvas is a strange beast however; while it gives us a "blank canvas" perfect for painting and blending effects, the API is largely vector based, which makes it easy to do shapes and outlines that can be smoothly transformed.
We'll take a (brief) peek at how this bizarre combination came about, and then dive into the way canvas "thinks" - the drawing model that you'll need to bend it to your will.