>Very little is learned in college that is necessary for general employment.
Obviously for a programming job you don't necessarily need a 4-year university degree, but I wouldn't diminish its value either.
>What college does is it throws a bunch of hard but irrelevant subjects at you that you slog through
No. That's not the right way to look at university education. The golden rule is "You get out what you put in". If you see college as being useless and irrelevant then that's what you'll get. You can certainly graduate with a 4 year degree and know nothing and have it be a complete waste of time. That's on you. I know many people like this. On the other hand, every CS class you take is valuable and does teach you something deep about our profession that you can take away. It's also especially valuable for a student because as someone learning you don't know where your interest lie so getting a sampling of the entire field is very nice IF YOU PUT THE WORK INTO IT. So what you deem as 'slogging' is really 'learning challenging topics' - which is hard whether you do it in class, or independently.
So tell me, which CS classes do you think are irrelevant and useless?
Looking back at my education, I had a Database class where we had to implement a database backed by a B-Tree, the cornerstone data structure of many modern databases. Was that useful? In your world, it isn't because I didn't have to implement a B-Tree in my career ever again and if I want a database, I can choose an existing offering ... but when I work with databases having this as part of my mental model of how databases work has been invaluable.
I agree. If you're in college spending who-knows-how-much for your education, make it worth the money...
Take some electives on stuff you're into. Music theory, humanities, social sciences... Take the time to go deeper on your passions. Study the broad amount of subjects: you're going to have more structure than self-study.
Obviously for a programming job you don't necessarily need a 4-year university degree, but I wouldn't diminish its value either.
>What college does is it throws a bunch of hard but irrelevant subjects at you that you slog through
No. That's not the right way to look at university education. The golden rule is "You get out what you put in". If you see college as being useless and irrelevant then that's what you'll get. You can certainly graduate with a 4 year degree and know nothing and have it be a complete waste of time. That's on you. I know many people like this. On the other hand, every CS class you take is valuable and does teach you something deep about our profession that you can take away. It's also especially valuable for a student because as someone learning you don't know where your interest lie so getting a sampling of the entire field is very nice IF YOU PUT THE WORK INTO IT. So what you deem as 'slogging' is really 'learning challenging topics' - which is hard whether you do it in class, or independently.
So tell me, which CS classes do you think are irrelevant and useless?
Looking back at my education, I had a Database class where we had to implement a database backed by a B-Tree, the cornerstone data structure of many modern databases. Was that useful? In your world, it isn't because I didn't have to implement a B-Tree in my career ever again and if I want a database, I can choose an existing offering ... but when I work with databases having this as part of my mental model of how databases work has been invaluable.