This is why people start arguing that college is a waste of time. Because, this is WRONG.
Vocational schools are about job training. Working on practical projects (often part of college courses) is about job training. Internships are about job training.
College is about learning how to learn. Yes, a lot of what you need to know to be a good programmer can be learned without ever setting foot inside a classroom. A good college degree in computer science IS NOT about learning to be a programmer. This is like studying mechanical engineering because you want to be a mechanic.
People who are hard workers tend to be good at their specific job whether or not they went to college, but college forces you to study things you might not study on your own (why would I study Eastern Religions if all I want to do is write software!?) and THIS IS A GOOD THING! It makes you more adaptable. It's why you're degree holding boss is your boss, even though you can code circles around him.
Yes, many people throw themselves into too much debt because they feel obligated to go to college, when what they really want is vocational training and that's where I agree that college isn't for everyone (no matter how smart you are). But most of the time the people who say that "College is a waste of time" either lucked out and got into a position that they want to stay in forever on their own or wasted their time in college.