4 ms·
> A very practical reason for preferring functional programming in a freshman course is that most students already have a certain familiarity with imperative pr
by ereyes01 8y ago
> A very practical reason for preferring functional programming in a freshman course is that most students already have a certain familiarity with imperative programming. Facing them with the novelty of functional programming immediately drives home the message that there is more to programming than they thought.
While later on, he does gripe about language quality, I think this is the most salient point of that letter. It touches upon IMO one of the most misunderstood things about Computer Science- it's a science curriculum, not a vocational school. The best (only?) way to build practical skills is doing practical things and learning through experience. Computer Science is more about rigorous reasoning about programs and their mathematical properties.
While learning about practical things like building web apps is fine and well, universities are not well equipped for this sort of vocational curriculum. They are primarily institutions optimized for performing scientific research.
- xenophonf 8y ago> it's a science curriculum, not a vocational school I griped about this to my CS/SE professors until my senior year of college, when I finally understood why they were teaching us all these weird languages and styles instead of the C/C++ that I assumed everybody used at the time: Programming languages come and go - hell, entire platforms come and go - but the underlying concepts (and the ability to teach oneself) are forever. I haven't written a single line of C/C++ professionally, but thank goodness I have the mental tools necessary to pick up all the different programming languages, libraries, protocols, etc. I did end up using.