I've met a couple of really, really brilliant software engineers who are self-taught (their actual degrees are in acting, and the arts). However, in my own experience interviewing people, the "self-taught" variety tend to have a severe lack of cohesion. Like, they understand certain very specific "hands-on" concepts, but they have zero understanding of the bigger picture and how it all fits together. Also, problem-solving is where they royally fuck up. Ultimately, you have to be vastly more intelligent to SUCCESSFULLY learn what you need to learn online than by going to university. And I'd stipulate that those vastly intelligent people who are self-taught and succeed would have succeeded even better in college.