Hacker News new | comments | show | ask | jobs | submit login
Scheme: Good or Bad for Freshman CS? (reddit.com)
5 points by dstorrs 3014 days ago | hide | past | web | favorite | 6 comments

A new CS student states his opinion on why Scheme is a poor choice for intro CS. More interesting because of the attitude that comes across clearly: that "working" code is all that matters, not testing, commenting, or other maintainability elements. Hopefully his curriculum will explicitly address this issue.

The interesting thing here is that his attitude is quite representative of what I've seen in plenty of companies.

Code that 'works' is treated as though it is holy because hardly anybody is around that worked on it originally and touching it is inviting disaster, because the comments are non-existent.

In the 80s there were plenty of companies that made a substantial living out of selling system development courses, where you were taught how to do it 'properly'.

This led to 12 lines of comments for every line of code, 100's of file folders full of ascii art that never were looked at.

The pendulum for some reason never seems to stop in the middle.

I know the curriculum well. He won't pass if he doesn't change.

If you want your education to be about only what you will use at a job, then go get a degree from a technical college that has a programming degree. If want to learn computer science, which truthfully is more a math degree than an engineering degree, learn to love new things.

Maybe I'm just in a bad mood tonight, but I really envy the fact that this "student" is learning scheme. My college used Modula-2 on an IBM 370 for all the mainline classes.

Yep.. my university covered things like data structures and complexity well enough, but felt they had to dumb things down for freshmans, many of who would not be advancing.

So we had java and pascal for various first year courses... I wish they had just gone straight to Scheme - it would have been mind-altering and a lot of fun.

They did have one course which was heavily project based which is the one I remember clearly - write a toy compiler, add a feature to a minix like OS, spellchecker with compressed dictionary etc.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact