- "College is expensive": Pretty US-centric point. It's very affordable in Canada and most other countries.
- "I know many great programmers who didn’t study Computer Science and some who didn’t go to college at all": I know far more great programmers who did study Computer Science. :)
I'd say undergrad is more about learning how to learn and the discipline required. "Take only classes you're interested in" may be very counterproductive to that, depending on your interests.
In the end, it depends on what kind of "hacker" you want to be. If "hacking" together WordPress blogs with a bunch of plugins is your cup of tea, you're probably better off not even having a Highschool diploma. If you want to build a graphics engine, a hugely scaleable system, or the next generation JIT programming language, you'll probably need a solid Computer Science education (whether you acquire it self-taught or otherwise).
- "I know many great programmers who didn’t study Computer Science and some who didn’t go to college at all": I know far more great programmers who did study Computer Science. :)
I'd say undergrad is more about learning how to learn and the discipline required. "Take only classes you're interested in" may be very counterproductive to that, depending on your interests.
In the end, it depends on what kind of "hacker" you want to be. If "hacking" together WordPress blogs with a bunch of plugins is your cup of tea, you're probably better off not even having a Highschool diploma. If you want to build a graphics engine, a hugely scaleable system, or the next generation JIT programming language, you'll probably need a solid Computer Science education (whether you acquire it self-taught or otherwise).