As someone who actually ditched the Scheme version and
went for and completed the Python one (and Python version is way easier), I'm actually disappointed to see that MIT dropped the Scheme version 15 years ago.
I mean it's MIT, and MIT is supposed to have the sharpest minds and the most difficult courses. And the Scheme version, albeit that I dropped it due to difficulty, DOES have a certain "flavor" that I did enjoy. Can't say what it is though.
I've heard this among other Course 6 students and alumni, and I think I understand your point of view, but I respectfully disagree.
Python is relevant to 90% of the jobs to which I've applied in my lifetime. In contrast, I've never seen any developer or manager mention Scheme seriously in a professional setting (just my honest experience), nor have I ever been asked in an interview about my experience with Scheme.
Python is extremely versatile, and works very well with many different design patterns. It offers a gentle-enough learning curve that you can teach it in the first part of a course, then turn around and use it as a platform to teach concepts in the second half of the course. 6.01 does this with robotics, for example.
MIT is often difficult for pointless reasons. Some of the professors are brilliant engineers but piss-poor educators. TA's don't all have the tact or capacity to tutor students about basic concepts. Python's simplicity, ubiquity, and large online community make it a perfect language for self-study, and time-constrained self-study is often a hallmark of an MIT education.
Most direct contact with educators in 6.01 doesn't involve the professor, but rather some other student who took the course a semester or two ago. For example, one idiot 6.01 TA of mine deleted two hours' worth my code from the course's Python environment (no CTRL+Z at the time) when I asked him to help me understand a concept, just because he didn't like something about the order in which I had written some computations. Then he said "do it again" and walked away. (I think he was from Russia; not sure if that's how education works over there.)
If that happens to you in a well-documented, community-supported language like Python or Java, you can go to someone else for help. With Scheme, you're kind of left without resources.
I'm all for challenges, but they should be reasonable and realistic, not contrived nor quirky-for-quirk's-sake.
Unlike you, I never took the 6.001 version, so I admit that I have a limited vantage point. But I think my logic here is not too far off.
I agree. I remember back then hating that 6.001 wasn't taught in a "practical" programming language, but now I completely see the value (and perhaps also magical aura!) of Scheme.
I think it's the way it teaches you to build things from ground-up and forces you to understand the principles. I'm reading CSAPP 3rd chapter and it gives me the same feeling.
That's exactly why 6.001 was dropped. There is no building from the ground up anymore; virtually all software development is modifying or extending something that already exists to fit some application.
I guess it's reasonable, but as a hobbyist I have the advantage to ignore such constraints (to seek a job), and such courses/books do seem to be attractive.
My impression is that dropping Scheme is something that some students have demanded for a long time, maybe even since the beginning. Back when I took 6.001 (in the 90s) there were certainly fellow Course 6ers who'd rather learn more "practical" languages like C/C++. But the fact is, Sussman could teach all the Scheme one needs for the semseter in one lecture (back then that was R4RS, minus continuations and macros), whereas C would be too low level and C++, well, we'd spend half the term just jumping through syntactic hoops.
How did they do the metacircular evaluator parts of the book in Python? That is one of the parts where the homoiconicity of Scheme really shines. Python just doesn't have that.
I mean it's MIT, and MIT is supposed to have the sharpest minds and the most difficult courses. And the Scheme version, albeit that I dropped it due to difficulty, DOES have a certain "flavor" that I did enjoy. Can't say what it is though.