So I'm an actively paying user of CodeSchool and Treehouse and tried out CodeAcademy a few weeks ago after being unfulfilled by it a few months prior.<p>I'm a designer by trade and a visual learner by heart and none of these services have helped me further my grasp on JavaScript as a whole.<p>CodeAcademy's error prompts are too vague to help those of us who don't know what is fundamentally going on. In one click I can find the answer, learn nothing from it and move on to the next challenge. Being able to cheat so easily is a huge turn-off to me and should be an equally big turn-off to employers/teachers who hope to utilize the badge systems these sites tout to gauge the student's abilities.<p>CodeSchool is apparently for people who already have a background in programming. Both my boyfriend and I attempted to take jQuery Air (a front-page testimonial says that someone without any JS knowledge could do it) and both of us got stuck at the same part. After doing some reading into the issue I found someone else that was having a similar problem in another course. The answer from CodeSchool was that they just assume students have the knowledge going into a course to tie up any loose ends and that it was intended that they'd have to do some research on their own. Yeah, no thanks. Furthermore, the way they handle "hints" is terrible and detrimental to the experience (I shouldn't have to waste 3 hints and get my score lowered in order to get to the one that's actually relevant to my problem). Another issue I had with CodeSchool is that going through the quizzes of things I already knew to get the badges, the way their app handles your input is really delicate. I wasn't able to use any shorthand CSS (for borders, CSS3 properties, etc.) without it telling me I was doing it wrong (note: Treehouse actually impressed me here). An additional gripe I have with CodeSchool is the quizzes (at least in the case of jQuery Air) feel clunky. It should be possible, if not standard, to have the video framed above the quizzes. I found myself going back and forth trying to find where the instructor mentioned a certain item that was relevant to the scenario, whereas with Treehouse, I was writing the code along with them.<p>Treehouse is, so far, the best. I liked not having to deal with the lessons associated with what I already knew and I felt the questions within those quizzes were well-rounded enough to make me feel like I wasn't cheating my way to a badge. That being said, the guy that teaches the JavaScript courses is all over the place; his variables and functions are often named "varX" and "funcX" which confuse the user, he waits until 3-5 minutes into a lesson to tell the user to comment out the last lesson (whereas sometimes he actually utilizes the previous code or variables). Where the JS fundamentals courses really fail though is in creating a <i>story</i>, a <i>scenario</i> in which we'd really have to use that code. The worst way for me to learn is to build something that has zero meaning. Writing 10 functions that do nothing but spit true and false at me isn't going to help me understand how and where I'd use such a thing. I need relevance and context.<p>Overall I've been really unhappy with the online/interactive tools available right now and have really only kept my subscriptions active in hopes that that money is going towards bettering not only the lessons themselves, but the in-browser engagements as well.<p>There are a few smaller ones I've tried out (and I'm currently registered for a few Coursera courses in case that is better suited to me), but if anyone has any suggestions about other sites I can try, please let me know!