Computer science is a liberal arts degree
A lot of folks here seem to have a real rose-tinted idea of what CS degrees are actually like. If you took CS more than 10, 15 years ago, you might remember it as a scrappy, fringey degree program, maybe splintered off from Electrical Engineering, a refuge for mathematically-minded nerds to find beauty in the cold algorithmic elegance of computation. That is not what it is anymore, not now that everyone knows you can make six figures right out of college with a CS degree on your CV. At the college I went to, CS is the second largest program, on track to be the largest in the next few years, and Intro to CS is the single most popular class on campus. They cannot hire professors fast enough. They&#x27;re launching their own coding bootcamp just to keep up with demand. A lot of people are getting this education, and we need to look at what we&#x27;re teaching them.<p>And what&#x27;s on the curriculum? Some good hard math, but also a fair bit of nonsense. Some people in this thread seem to think colleges have been taken over by javascript, and that may be true in some places, but I wish they&#x27;d taught us JS, because what they taught me was Java Swing, because a decade ago the ivory-tower tenured professor who wrote that course thought it would be useful for getting us a job and never touched it again. They could&#x27;ve replaced that course with underwater basketweaving and nothing of value would&#x27;ve been lost, let alone any of the excellent humanities topics the author mentions in her post. There is plenty of space in the curriculum to clear out enterprise-driven cruft from fifteen years ago and replace it with some of the useful things the author mentions, without touching any of the core mathematics we all love.<p>In fact I would go a step further: Having a lot of people who are very good at programming but who don&#x27;t know anything else is a bad thing for society. This is unique to programming as a discipline - programmers have historically unprecedented power to turn fuzzy, implicit ideas into concrete reality that affects people at massive scale. It&#x27;s totally ok to let mathematicians, for example, go off and study just mathematics, because mathematicians are harmless. Programmers are dangerous. Without perspective, we will calculate ourselves right into dystopia - we&#x27;re doing it right now! What good is it going to do any of us to write systems that strip away all our civil liberties with perfect big-O complexity?