Web development n00bs (like me): I highly recommend the Head First Labs books.
For a review, I’m working through Head First HTML with CSS & XHTML. I’ve learned HTML and CSS by the seat of my pants, in bits and pieces — very much on a “need to know basis.” So while pretty much everything in the book is review for me, it’s still good to have it actually organized for once. And I am finding a few gaps in my knowledge, which I’m filling in.
So far, they really seem to have nailed the style for “workbooks smart people can use to teach themselves stuff they don’t already know.”
The authors clearly did a lot of research into how people learn, and then designed this presentation: conversational, engaging, heavy on the examples and experiments. (Plus self-aware corny, silly humor — which is a great stealth teaching method. I may groan, but I’m going to remember the information in that joke.)
They’re explicit about what knowledge they do and don’t assume. This is key. I cannot tell you how many times I’ve been trying to learn something, run across some unfamiliar concept or vocabulary tossed off without explanation, and ended up spending frustrating hours trying to go back and fill in the blanks.
In fact, I just did this. Trying to learn methods for propagating uncertainty in my ion-channel model by consulting an expert and reading the textbook he recommended, only to wind up spending weeks digging up more basic texts on probability theory so I could understand the abstract applied-math presentation of the method — all of which got me no closer to actually being able to do anything with uncertainty in my model.
You know when I finally started to figure it out? When I stopped banging my head against the textbook and picked up a shorter paper with a specific example of the method being used.
Examples — that’s what I thrive on when I’m learning something new. I build up theory from observations. It’s hard for me to go the other way when I’m learning something new.
That’s another thing the Head First books are great at. You’re making stuff that works from the very first chapter. You’re constantly encouraged to experiment, try stuff and see what happens. I do that anyway — but it’s awesome to have it be part of the presentation the whole time.
As soon as I’m done with the review in the first book, I’m going to move on to Head First HTML5 Programming — which I am super excited about. (It contains an intro to Javascript, though there is a separate Javascript book too.)
I’m always happiest when I’m starting a new project and learning something new. Getting to teach myself HTML5, CSS3, and Javascript? From sources really well-designed for me to do that? So excited right now.
(Head First has books on all kinds of tech topics, not just web development. Check out the whole books list.)