Speaking as a college dropout, who dropped out due to lack of money and immediately got a programming job, I would like to stress the importance of college. As far as the social experiences go, you will rarely ever be in an environment that is anywhere near the social level of college. As programmers we tend to get jobs where we are locked in on the computer all day off in our own world. I have definitely made social connections from working, but no where near the level that you get with college.
I agree with some of the other posts that you will not likely learn things in college that you don't already know or couldn't easily learn, about _computers_, but my recommendation is to ignore the computer curriculum in college (unless the program is outstanding) and pick a completely unrelated topic that you enjoy. Your college degree will be a piece of paper that no one cares about, so make college about you, not about getting a degree to impress someone else. This also has the advantage of keeping programming fun, a lot of programming classes and homework take topics that are very interesting and make them tedious and unenjoyable.
If I was to go back to college and start over right now, I would double major in physics and linguistics, and minor in greek/roman history and in philosophy. You can still take programming classes, but ignore the earlier classes, figure out the materials, teach yourself anything you need to know, and test out of those classes so you can just take the classes you are interested. There is also a lot of interesting math classes you can take.
(EDIT: typo)