Live data from Hacker News

SICP is Under Attack

vedantk.tumblr.com

61–70 of 207 posts

Re: SICP is Under Attack

#61
I felt the same way wrt The Little/Seasoned/Reasoned Schemer and religious experiences.

It's a shame that they're removing SICP in favour of a technical introductory text.

Python is great and all, but SICP isn't about teaching Scheme.

Re: SICP is Under Attack

#62
post #4

Even MIT abandoned SICP for its introductory course in favor of Python. But I believe it's featured in its second course, no? I don't consider that a mistake. If you're getting rid of it from the curriculum altogether, though, that's a mistake. This article didn't say if that was the case or not. (Also the point of SICP being language agnostic is fairly false. I mean sure you can implement iteration as recursion in o…

Your points. 1) MIT did not abandon SICP: it decided that it no longer wanted to teach core CS concepts. There was an interview with Abelson on HN a while back, look that up for more. SICP is not featured in the courses at all, unless you count 6.945, an advanced class with Sussman, that goes far beyond. 2) The fact that iteration is a special case of recursion is a fact that does not depend on a language. For its pa…

MIT did not abandon SICP: it decided that it no longer wanted to teach core CS concepts.

Wait, what? Are you claiming that the MIT undergraduate CS program does not "teach core CS concepts"? Or are you only talking about a single introductory course?

Re: SICP is Under Attack

#63

Earlier quoted context omitted.

If that's what a school wants to do, then it should just discontinue CS and rename it software engineering. Actually, my old school had such a major...

It's not an either/or. Software Engineering is a part of Computer Science.

Part, but if they focus so completely on the subset, then is it really computer science anymore?

Re: SICP is Under Attack

#64

I love SICP as much as the next person. I've spent vacations devouring it while despairing girlfriends try to get my attention. Seriously, it is awesome . But, being realistic, an incredible amount of value is currently being created by software engineering . Value to society, and (hence) value to those who can practice the craft. I'm not surprised that so many schools are teaching software engineering, instead of co…

Note that this contention is over one course in the entire CS curriculum. I think there is quite a lot to be gained by continuing to teach SICP somewhere early on, even if the degree programs begin to take on a more earthy, practical approach to compsci. There is no reason "Dive Into Python" can't be taught in something like "Modern Software Engineering 101" and SICP taught in "Fundamental of Software Design" or something to that effect. I think there's place for both, and I fully agree with the author that SICP (or a modern equivalent, if one is ever published) is an important formative text in the mind of the novice programmer. SICP is usually one of the most serious interactions a working "software engineer" will have with functional programming until his beard grays a bit more and he takes a deeper interest in the craft over the day-to-day "engineering". A very valuable experience imo.

Re: SICP is Under Attack

#65

Earlier quoted context omitted.

If that's what a school wants to do, then it should just discontinue CS and rename it software engineering. Actually, my old school had such a major...

It's not an either/or. Software Engineering is a part of Computer Science.

Unfortunately the trend seems to be the replacement of one with the other. What I am suggesting, one major for each, is exactly the opposite of either/or.

Re: SICP is Under Attack

#66
At my school our intro class was in Python, but an SICP class was required for majors. I think this was a pretty decent compromise, especially since many prospective majors placed out of the intro class anyway. I agree that SICP (really FP in general, though the consensus seems to be that SICP is the best way to teach it) is a necessary part of any serious CS curriculum, but I don't think it's necessarily a good place to start--especially if non-CS people are taking the intro class.

Re: SICP is Under Attack

#67
I've always found SICP quite overrated (I'm saying this after reading it).

Given Python's learning curve, a much better curriculum would involve going through the codebase of a few well-chosen projects, sending in a few patches and perhaps writing a report on the high-level design of the piece of software or on how the project solves a particular problem (how does XYZ handle i18n? how does ABC stay stable even on a failing network?)

Re: SICP is Under Attack

#68

I've always found SICP quite overrated (I'm saying this after reading it). Given Python's learning curve, a much better curriculum would involve going through the codebase of a few well-chosen projects, sending in a few patches and perhaps writing a report on the high-level design of the piece of software or on how the project solves a particular problem (how does XYZ handle i18n? how does ABC stay stable even on a f…

I can't say much about "Dive into Python", since I've not read it.

Re: SICP is Under Attack

#69

I think that starting with Python is a fine choice. Please keep in mind that it's just the introductory course-- these students are going to be battered with CS theory later on. We are graduating around 20% fewer students in CS than we were in 2004. We need to find a way to make CS more accessible. I'm not saying that we should make the whole degree easier, but I think that having an easier & more practical first cou…

Those percentages don't mean much out of context. Was the curriculum less stringent back then (I.e. graduating people that shouldn't have been able to)?

Re: SICP is Under Attack

#70

Earlier quoted context omitted.

I completely agree, but at the same time, it's a barrier to entry that I think might be unnecessary. Some college freshman haven't taken calculus, and SICP would seem a bit daunting at times to those students, I imagine. Unfortunately, I think HtDP goes too far; it's too dumbed down.

> Some college freshman haven't taken calculus... Yeah, and that's a serious problem, too -- and one that I'm guilty of! ...that is, if I'd ever gone to college. :-( I am very much not encouraged by a "race to the bottom" when it comes to education. If calculus is too difficult for the student, then perhaps the student should not consider a career in programming. I say that without any malice whatsoever; I'm not symp…

[deleted]
Post reply on HN