> I think you are taking the position of a young person who hasn't had much education outside of high school.

I went to college for almost two years, and re-enrolled in college late last year doing night classes. I also worked as a research scientist at New York University for around a year (2015-2016), though this was admittedly more in the working world than the educational world. My wife is doing college full-time. This seems like a weirdly dismissive response to me.

> For example, my son, who happens to be studying CS at a major university was forced to take a class on Marxism

I have never heard of this outside of stuff like the Drudge Report or Fox News; before I dropped out of Florida State University, I never saw Marxism as one of the required classes, and I changed my major from CompSci, to Physics, to Mathematics. Maybe your school is different, but I have seriously never heard of "Marxism" being a required class in any university.

> To continue with the example, if my son failed or dropped out of the Marxism class (he did not, he passed it with full marks) it should have no bearing on his overall standing in the CS degree.

Did you not actually read the comment you are responding to? I said pretty unambiguously that the classes that seem "useless" often end up informing your perspective in different ways. That was literally the whole point, and it seems like you kind of missed it.

To go with your example, it's entirely possible that the Marxism class would give a higher understanding of political theory and philosophy. While your son may not want to be a politician, him having a decent grasp of philosophical reasoning is probably a good thing.

>I also disagree with the concept of a fixed timescale being required in order to gain understanding of a topic. There's plenty of evidence in support of this. Companies complain that traditional CS grads don't know how to write code. Yet they spend four to six years in school getting BS or MS degrees.
> Frankly, going back to my son, if it weren't for the fact that we work on a number of real-world projects together his coding skills based on schoolwork would likely be substandard. There's a difference between learning to CS to pass tests and applying it in real-world environments.

I'm sorry if I didn't make this clear, but no one should go to college thinking that it is sufficient for being a decent engineer, just like having a skeleton is insufficient for having a body, or having an oven is sufficient for having dinner. There is a lot of self-learning you have to do.

College is about building fundamentals, and teaching you how to teach yourself.

> I would much rather hire someone who devoted a couple of intense years learning and two years full time directly applying and honing the craft than someone who takes four years to study and comes to me with no experience other than, perhaps, a few summers as an intern here and there.

And I'm glad people have this mentality...it's kept me employed, but when I've had to hire people, a vast majority of dropouts who work on experience (though not all) have a weak understanding of fundamentals, and while that's not a problem for some domains, it is a problem for mine.