4 ms·
The author's attitude toward CS degrees stems from an insidious issue affecting higher education in America (and that, in my opinion, will eventually be its dow
by jballanc 15y ago
The author's attitude toward CS degrees stems from an insidious issue affecting higher education in America (and that, in my opinion, will eventually be its downfall). College is not where you go to learn something. That's what trade schools are for (at least traditionally).
College is where you go to learn how to learn.
Not everyone wants to learn how to learn. Not everyone needs to learn how to learn. There are a great many professions where one simply needs to be trained, and then set loose in the "real world".
Programming is not one of those professions.
So as colleges have shifted toward satisfying the masses, the majority of whom fall into the category of not wanting or not being interested in learning how to learn, they are increasingly failing those who need such skills.
- mquander 15y agoIf you're going to repeat this cliche I think you need to explain how colleges are teaching people to "learn how to learn," how that differs from the way they would teach them "something," and why you think the idea of one without the other is coherent. Since I went to school too and I observed teachers at all levels laboriously explaining something, testing students carefully on their specific knowledge of something, and awarding them diplomas and degrees in something, I am skeptical of the assertion that they were actually doing something else.
- jballanc 15y agoTo take a common CS example: sorting. You can teach someone how to use a library sort function. That's teaching a trade. You can teach someone how to write a quick sort. That's still teaching a trade. Alternatively, you can teach someone how to analyze the big-O runtime and space requirements of a variety of sort functions. You can teach them how to recognize best-case and pathological-case inputs and what that means for the runtime. You can teach them the difference between a conservative and non-conservative sort. The student that learns how to write a sort function will know how to write a sort function. The student that learns how, when, and why to do detailed algorithm analysis will be able to write all kinds of algorithms, even ones that don't yet exist. That's the difference between "learning" and "learning how to learn".
- mquander 15y agoI think your example is mostly the difference between learning a lot and learning just a tiny bit. It's also the difference between being curious and being a dimwit. Only a dimwit would learn a hundred library calls without ever finding anything out besides how to invoke a hundred functions. If a curious student spent an equal amount of man-hours learning about sorting algorithms as another curious guy learning about the design of the XYZ standard library, I bet the guy who learned a lot about the library would have learned many abstract and generally applicable things, too. I get the sense that you are trying to draw a line between "things that are directly useful" and "things that are not really useful, but only provocative and interesting" but I think it's mostly a fake line. Having a deep understanding of sorting is both useful and interesting. Having a deep understanding of the different ways that libraries choose to expose functionality on collections is also useful and interesting. Almost everything to do with computers that I've found in my life is both useful and interesting if you think about it hard enough.
- jballanc 15y agoI don't think it's a fake line at all. It's the same as: "Give a man a fish and he eats for a day. Teach a man to fish and he'll never be hungry." Or, if you prefer: "If you want to build a ship, don't drum up the men to gather wood, divide the work and give orders. Instead, teach them to yearn for the vast and endless sea." It's the difference between tools and knowledge. If you teach knowledge, then a student can learn as much knowledge as you can cram into their brains in 4 years time. If you teach tools, then a student will be able to continue learning the rest of their life.
- mquander 15y agoI feel like both tools and knowledge coincide more often than not, most of all in programming; so everyone should just teach both tools and knowledge simultaneously and there is no dichotomy to worry about.
- srl 15y agoOh look: a comment not critical of, but nevertheless about, colleges, is being downvoted on HN. Stop my beating heart. The current "college is a waste of money/time" trend got boring rather quickly - at this point, it's just extraordinarily stupid. It's true, if your goal is to maximize money earned, you should probably not go to college. You should also never have children, or give to DWB, or learn to play an instrument. Going through college focused on getting the Right Degree and the Right Grades is, of course, a waste of time: your time is better spent angling for promotions at McDon's. But exploiting the nearby presence of hundreds or thousands of extraordinarily intelligent people just in your field, for four years, is definitely a worthy experience, and not just for a tiny minority of people. If you're going into a field that presents novel challenges with as high frequency as programming does, it's an experience you'd do well to have.
- dinkumthinkum 15y agoPoppycock. If you learn the Pumping Lemma. You know the Pumping Lemma. It doesn't matter if you are using Ruby on Rails or PHP 7 or whatever. I dismiss this notion that College is just where you go to learn how to learn. Scientists don't say this crap. They don't say "Nevermind all of that calculus you learned in College young physicist; college was just for you to 'learn how to learn' whatever that means! now you can go off and try to learn Calculus so you can do your job!" It doesn't make sense. It completely dismisses the notion that there is qualitative content based learning going on in colleges. It seems so customary to have this view but it doesn't seem to be based in fact. For any computer scientist that was not purely an autodidact, they probably learned a great deal about computer science, yes actual content, that is still and will stay relevant to them throughout their career.