Originally posted by: fongo888
I did look up tutorials in google, I guess what I'm looking for is something like a free class online. They show you how to do it with code then have you do a assignment.
http://www.lynda.com/ might be somewhat what you're looking for. They're video tutorials, but they don't 'assign' you a task as far as I'm aware.
Back in my high school days I remember our school board had online interactive lessons for various programming languages. It was horrid beyond belief. They somehow managed to make it seems as though the content is very extensive by diving right into binary operations for javascript, yet at the end you still didn't have a ****** clue how to make a function.
I learned by picking out the latest books available for the said topic and flipping back and forth. If one book confuses you, go to another to grasp the particular subject. Even if you understand the first one perfectly, it's still a very good idea to read another and another as they often cover certain material the previous one did not, refining your knowledge.
Any interactive tutorial you'll find is very likely to be horribly out of date. The web development world just moves too fast, even subject matter from 2004 is likely to not be applicable to today. You really want to find yourself the most recent information you can.
The W3C tutorials quiz you at the end, but those tutorials like the quizes are insufficiently comprehensive. My suggestion would be to pick up a good book and give yourself assignments at the end of it.