This post should be treated as an historical artifact. It probably contain broken external links and it may no longer reflect my views or opinions.
Not a whole lot to say about it, but I think that the Learn Code The Hard Way initiative is absolutely awesome; it’s probably Zed Shaw’s (@zedshaw) best work. I’ve used his Learn Python The Hard Way book (and snippets of Learn C The Hard Way, because sometimes the Old Ways are the Best Ways) as reference but they really excel when used linearly to do what it says on the label.
This series uses example-based tutorials to explain and illustrate concepts and new lessons build upon concepts learned from previous lessons and examples. By the time you’ve gone through one of the books the most fundamental lessons have been iterated over numerous times (but without beating you over the head with them), and that’s how these things stick. But honestly, my favorite things about these books are that they’re priced to move (free & cheap, based on what format you’re looking for) and that they’re open-source (the source code is up on Zed’s Gitorious account) but they’re edited; no wild-ass Wikipedia style misinformation, just people contributing what they know where they think it’ll do some good.