I tried DWM, and I think it's pretty cool. But extending the functionality through C, and the limited set of patches, kind of bothered me. I wanted to essentially DIY my own window manager, but with a language that's a bit quicker to write, and less a burden to think about.
For this, I highly recommend AwesomeWM. Been my daily driver for half a year now. I absolutely love it. It's scripted with Lua, so it's still snappy, while being easy to extend. The only downside is the *meh* documentation, but it's still usable.