A FEW POINTS:
(not yelling, just wish HD had markdown to enhance posts)
1- If you are not going to become an entrepreneur
being a programmer is like being a supermodel
2- If you are going to work for large companies
degrees are necessary filters
3- The academic knowledge filter
4- If you don't get a shot in fields you don't know
exist there things you are not going to learn on
your own
5- If you can be frugal you might be on the right path
6- Technology moves very quickly
Let's look at these one-by-one.
PROGRAMMER IS LIKE A SUPERMODEL
Depending on what you are doing your career can become far more difficult as you approach an age range between 35 and 50. There definitely is age discrimination in the tech industry. This is particularly true of programming. Companies will never tell you this, but they'd rather hire a 24 year old vs. a 40 year old. Why? There could be many factors here, from the ability (and desire) of a young person to just-about kill themselves working 24/7 to lower pay.
Why might a degree be important here? If you hit the age wall your only options might then be to become an entrepreneur or move into management. You don't need a degree for entrepreneurship. You probably do for management.
THE LARGE COMPANY FILTER
Large companies, companies who hire lots of people all the time, almost have no choice but to implement first-level filters. The process doesn't always lend itself to the laborious, time-consuming and personal process you would need to evaluate someone who is self-taught. If your goal is to work from some of these companies, you'll need a degree or you'll need to get in at a lower level and prove your worth from within.
THE FILTER
Quick, list sorting algorithms in order of computational efficiency!
I know tons of brilliant people --with and without degrees-- who could not answer that and the myriad of other "are we still in college?" questions in interviews. The fact is that some companies use crap like this to filter you. I call it crap because, to me at least, all is says is that the person might have a good memory and that maybe they spent a week preparing for the interview. It says virtually nothing about anything else. I rather sit down with a candidate, present a problem and actually work together on solving it. Take into account that he or she is probably nervous and just watch how they go about the process.
To me flexibility, process and creativity are far more important. In fact, I want to know how someone goes about dealing with a problem they know absolutely nothing about. For example, I might ask you: "Do you program in Python? No? OK, let's sit down and see how you approach writing a program that generates n numbers in the Fibonacci series in Python.". Of course, this process takes far more time than simply kicking you out the door if you don't have a degree or can't answer a set of puzzles. However, it tells me far more about you as a person and as a professional who is very likely to have to deal with things you know nothing about while working for me.
EXPOSURE TO UNCOMMON FIELDS
Have you worked with state machines?
Machine Learning?
Assembler?
Threaded Interpretive Languages?
UML?
Patterns?
Implemented a small round-robin or preemptive RTOS?
Recursion?
Why not?
If you are doing run-of-the-mill web development these and other subjects can probably be classified between "never applicable" to "uncommon". Can you learn ML on your own? Sure. Most people don't. Too many other shiny things to focus on. For example, that new language or framework you are seeing posts about with more frequency on HN. The problem is that such subjects do have relevance and applicability in areas one might not always recognize. College will expose you to a wide array of subjects and theory that, even if studied superficially, might become a part of how you think when faced with new challenges or difficult problems. There's value in that. Again, you can learn these things on your own but you kind of have to know they are there as an option in order to reach for them.
That said, some of what you are going to learn in college today will be utterly useless in twenty or thirty years. Example? In the 80's they still taught FORTRAN. OK, maybe not useless today from an academic standpoint but useless in terms of relevance to the vast majority of CS work today.
FRUGALITY IS ALWAYS THE KEY
You are 19 and live in the UK. Can you save £30K per year (or more) if you really and honestly cut out everything you don't need in life? Do this for ten years. Save your money. Invest some of it in low-risk investments (see a professional). Don't get greedy. If you don't screw it up, in ten years you'll have £300K in the bank. That is life-changing money at 29 years of age. Use the ten years to also learn a LOT about money and finances. Don't blow it on stupid shit. If you get to that point you'll be able to decided where YOU want to go and what you want to do. Maybe you take a few years off and jump right into college to get a degree based on what you now understand is your primary interest. You will have options. And no debt.
OLD TECH
I alluded to this earlier. Someone who went to school in the 80's was not exposed to any of the myriad of technologies, languages and frameworks that exist today. To some extent, nearly everyone in CS becomes self-taught after a while. You have to. Things move too quickly. Today you can choose from a pile of languages and platforms to work on. Twenty years ago that was not necessarily the case. It can be confusing and exciting at the same time. College will teach you a number of things that are applicable to today and could be nearly useless in ten or twenty years. I don't know, to pull an example out of my hat, you could go to Stanford and study Objective-C and iOS programming. Today this could be a valuable skill if you want to work at Apple or start your own business writing iOS apps. In ten or twenty years? Who knows. What we do know is that it is far likely that you will have to learn new things that aren't even in the horizon today. Most of the theory, discipline and workflows you are going to learn in college today will still be applicable and valuable in twenty years. That's probably where a lot of the value is.
CONCLUSION
Anyhow, one could go on and do a dance where you jump between both sides of the argument, for and against college. There is no easy answer because nobody knows if the next Facebook or Google is someone inside your 19-year-old brain. What if it isn't? They you are like the vast majority of professionals in this field who will need to work until they retire. Consider that for a moment. This isn't meant to be a downer but rather a trigger for you to think about the various options and permutations life can throw at you. Yes, you could come up with a brilliant idea on Monday, execute on it brilliantly and never look back. Or not. I feel that, to some extent, a degree could be more useful later in life as you might have a need to transition into management. At some level people are simply not going to even consider you for, say, a VP or CTO position without a degree. A degree also opens the path to, perhaps, going for an MBA and shifting your career in another direction as you get older. Again, think supermodel. You are hot today and everyone might want to hire you. What will happen in twenty years? In many ways what choices you make today are really a preparation for the latter part of your life, when options will be reduced.
This, in general, has nothing to do with the question of a degree. Lots of youngsters go get a degree and fail to recognize what life might have in store for them when they get older. They blow money and time right and left. I was one of those youngsters. I bought my first house when I was 21 years old. Paid cash. I owned two race cars, a sailboat and every new piece-of-shit electronic gadget that came out. I was making a lot of money in tech and blowing through it like it was free. I wish someone had kicked me in the head and schooled me about what real-life looked like after the party. Eventually the party was over and I lost everything. Lucky for me, I have entrepreneurship in my DNA. It wasn't long before I launched my own business and bootstrapped myself from nothing --and I do mean "nothing" as in not a penny to my name-- to being a successful business owner. I did waste about ten years of my life. I am proof that a degree isn't an antidote for youthful stupidity. In the end my massive "phase 1" failure taught a lot. Maybe it was good that it happened that way. I don't know.
Choose wisely.