Welcome to the Lounge

The Lounge is rated PG. If you're about to post something you wouldn't want your
kid sister to read then don't post it. No flame wars, no abusive conduct, no programming
questions and please don't post ads.

I hate to disagree with your dissenting opinion, but my experience has been the exact opposite. Full disclosure: I’ve coded for 20+ years and still don’t have any kind of degree. I firmly believe being a star coder isn’t about going to college or being self-taught. It’s 120% about drive... which I see in most self-taught coders. In fact in the interviews I’ve conducted (think about that for a moment) I’ve found that recent college grads are ~on average~ just about useless. In my opinion, if you need collage to be a coder then you don’t have what it takes to be a coder.

That said, the absolute best among us have an amazing drive AND a degree. We can argue which is better to start with, but the best have both.

And to answer your question: yep, I learned that stuff on my own. I’m currently going for a Bachelor's Degree. While some classes have been loads of fun, nothing in my programming focused degree is new or helps me code better.

(1) A lot of coders are not very special, to which I'd add that it probably doesn't matter whether they have a degree or not. I actually wonder what happens to these folks. Every employer is looking for top talent. Do they just never get a job? How do they get hired?

(2) The best coders have drive and a good CS grounding, to which I'd add that whether they got the grounding on their own or in college isn't important, but the grounding is.

(3) If you had enough drive to study data structures on your own, then you probably are having a great career, college or no.

Now, in my experience, which also spans 20+ years coding, a degree from a good CS program is an easy-to-test proxy for drive. It means a candidate successfully pursued something difficult for four whole years. You still have to check that they're not a liar or an idiot, but it supports a working hypothesis when winnowing down a stack of resumes. Too many times when I've taken a chance on calling a candidate with no degree, I find out they're easily bored or distracted, can't or won't stay with long-term projects, or sound smarter at first than they really are when you challenge them. It's also usual to find that these candidates can't answer simple questions about the efficiency of sorting algorithms.

If I know the person, or they have a good recommendation from someone I trust, that's a different situation. (I mean, duh). But the averages are not in favor of the self-taught.

In the end it’s really about risk management. Ignoring degree-less coders ignores some fantastic coders… along with some not-so-great coders that college would otherwise weed out. I guess it’s a “pick your poison” situation.

i am master degree educated, work in quant finance but i agree with you - i still regret countless hours i wasted in education just to get the right paper so i can be hired by reputable firms to earn a *middle class* income

Also, schools didn't teach me how to think or communicate - they lied.

I find that 90% of what I learned, I learned from others. Some from classes I took in college, but now, 20 years later, most of what I know has been learned from others outside college. There are some techniques I learned in college that I still use, and that others have no clue about. They weren't fun to learn, and most of the world gets by fine without them, but I know just that little bit more than others, occasionally it even matters.

College caused me to learn a lot more about a wide variety of computer topics than I ever would have done if left to my own, and I'm a pretty curious sort. A lot of the more esoteric topics I probably wouldn't have bothered to learn on my own because they take a lot of time for very little gain. On the other hand, sometimes topics come into vogue that I was forced to learn in college.. and then its a been-there-done-that sort of affair for me rather than an epiphany.

College will teach you things and techniques that you won't teach yourself. Those things will end up being mental tools for you your whole career, or maybe even a basis of understanding and experience in some "new" programming idea that becomes popular later on in your career. Whether you want to spend the time and money to have that sort of background is up to you.

We can program with only 1's, but if all you've got are zeros, you've got nothing.

Pubs are in decline because drinking is so damn expensive these days, and also because there are not large numbers of manual labour jobs where everyone has a drink down the pub after work. That's been increasingly true for 20 years, I guess. So demand is down, and costs are a long way up (particularly labour – bar staff have to be paid at least minimum wage – and rent). Most British towns are over-supplied with pubs for the modern level of demand so it's inevitable that some will close.