I don't have much personal experience with Codeacademy, but I've heard good things in general and I liked the little I saw. I don't think it offers a replacement to good books or formal training (university classes or similar), but it certainly helps and could complement them. It's up to you how you do it and I can't really offer too deep insight - I can't simply forget what I know and then relearn it to objectively judge some method of learning vs my own (and things look different from the other side if I try to judge now). Oh, a final aside. It's good to have coding buddies beyond a point (beyond syntax, around basic algorithms and data structures I think) to talk to as you go. If you don't know any such people in actual life, finding an IRC channel that interests you and has some coders might be a good idea. Small ones (20ish users) are often more helpful and pleasant to be part of. Creating a hubski irc might be a good idea come to think of it. Best of luck.