Codecademy is good for the absolute basics, but I found anything beyond that seriously lacking.
I remember really hating the tutorial on 'How to use APIs with Javascript', for example. It basically told me exactly what to type in and I 'passed' the course without understanding any of it.
I had the same experience, it gives a false sense of security. I can pass the courses without having even a remedial understanding of the underlying concepts.
Yes, true. It's basically good for someone who's never programmed before and thinks "there's no way I could do this"...it gets someone going that way I feel...
Getting your hands dirty is definitely a good thing, but CodeAcademy is a bit dry. The best thing I've found is trying to get someone to make something that THEY want or need. For someone 100% new to programming, that can be a bit tough though. So books, classrooms and MOOCs do have their place I think.
I remember really hating the tutorial on 'How to use APIs with Javascript', for example. It basically told me exactly what to type in and I 'passed' the course without understanding any of it.