Scott Grey wrote up a comprehensive review of Codecademy.

One quote in particular stood out for me in his review (emphasis mine):

So, for all of my beliefs about the way online education ought to be presented, if people are learning about coding though Codecademy, why am I concerned about which features comprise that learning system? My first thought in response to that question is to consider whether people are really learning to code or do they just think they are? Who decides? Can people who go though those lessons actually open up a programming interface and create something from scratch? Can they explain the coding language to someone else? I doubt it, not yet anyway. Would you hire someone whose experience lies in having gone though some computer lessons and received a few badges for putting in a variable here and there? I wouldn’t, but perhaps that isn’t the point.