I bought a class for my 10 year old son at Udacity and it was a reasonable introduction to the topic -- if you already had a reasonable understanding of the topic. My problem with MOST of the inexpensive online training is that they make far too many assumptions and unreasonable statements about the target audience of the classes. In many cases, I have found that it would be impossible for most of the target audience to even set up the development environment correctly, let alone actually complete the class. In addition, the classes that I have experienced have mostly not taught anything to a reasonable level of understanding. Instead, they often have the recipe of: copy this code, paste it here, wow, look what you just did -- your an app developer!
I guess the problem that I have with cheap online classes is their overstatement of class goals and outcomes. No matter what a class promises to you, you cannot take a single class (or ten) in front-end web development and know anything about modern web development. What you CAN do, is take one of these classes with the understanding that your will need to spend dozens of hours doing additional research and experimentation each time a new concept is introduced during the class. It's up to you to put in the time to truly understand the concepts that are introduced in an extremely shallow nature in these classes.