My issue with those courses is that they teach you the "hows" of a problem, but not the "Whys". Completing them, you know how to perform a certain task, maybe even according to best practices, but you don't know why those practices are good, when they are bad choice, what are the alternatives. Ones the assumptions of the course break, it becomes useless. Without the deeper understanding of the field, moving to a newer technology, framework, or even gui interface might turn out to be a struggle.
Yes, such courses might be useful to fill in gaps in one's education, but it can't substitute said education. Low-quality tech graduates might profit, but humanities graduates won't become decent developers, at least not without continuous training for years which might take as long as a second degree.