Live data from Hacker News

Why MIT switched from Scheme to Python (2009)

wisdomandwonder.com

31–40 of 249 posts

Re: Why MIT switched from Scheme to Python (2009)

#31

Isn't this just part of the broader trend of CS departments switching away from teaching computer science to teaching computer engineering, which in turn is part of the more general trend of colleges becoming more vocational? LISP dialects like Scheme are excellent for teaching pure computer science because they are the closest thing to executing lambda calculus expressions. Whereas Python is excellent for teaching a…

Yes. One of the biggest complaints that computer science departments used to get from students is that they weren't learning any languages that employers are using.

There were plenty of less rarefied CS departments that were concerned about this, and they taught C, C++, or Java in their introductory classes.

Ultimately, it doesn't matter. It's your first language, not your last.

Re: Why MIT switched from Scheme to Python (2009)

#32
The move away from Scheme has always saddened me. The first thing we learned in 6.001 was abstraction and invariance. These are still the core of writing good software. I still use these principles every day. There is a purity to Scheme. It is a beautiful light-weight language anyone can learn over a weekend. It does nothing magical for you which means you get to / have to build everything you want and you must understand how it fits together.

Re: Why MIT switched from Scheme to Python (2009)

#33

Earlier quoted context omitted.

Yes. One of the biggest complaints that computer science departments used to get from students is that they weren't learning any languages that employers are using.

There were plenty of less rarefied CS departments that were concerned about this, and they taught C, C++, or Java in their introductory classes. Ultimately, it doesn't matter. It's your first language, not your last.

How many people do you know who are monolingual?

Re: Why MIT switched from Scheme to Python (2009)

#34
post #24

Earlier quoted context omitted.

Yes. One of the biggest complaints that computer science departments used to get from students is that they weren't learning any languages that employers are using.

I'm not so sure someone who's good with Scheme will be bad with Python or Java. On the contrary, I suspect that such a person is likely to be better suited to build software in either of the latter two. I also suspect that Python is not a particularly good first language for someone who aims for a professional career building software.

> I'm not so sure someone who's good with Scheme will be bad with Python or Java.

The problem likely has always been the companies / HR rather than the students.

> I also suspect that Python is not a particularly good first language for someone who aims for a professional career building software.

It's not a particularly bad one either, certainly better than Java.

IIRC a secondary benefit is that it allows overlap between some of the basic CS, and the CS/CE courses for non CS track students

Re: Why MIT switched from Scheme to Python (2009)

#35

Isn't this just part of the broader trend of CS departments switching away from teaching computer science to teaching computer engineering, which in turn is part of the more general trend of colleges becoming more vocational? LISP dialects like Scheme are excellent for teaching pure computer science because they are the closest thing to executing lambda calculus expressions. Whereas Python is excellent for teaching a…

Yes. One of the biggest complaints that computer science departments used to get from students is that they weren't learning any languages that employers are using.

To be fair, if you learn computer science well enough to thoroughly understand Scheme, I don't think it'll take more than a few weeks during the summer to learn Python.

Re: Why MIT switched from Scheme to Python (2009)

#36
post #24

Earlier quoted context omitted.

Yes. One of the biggest complaints that computer science departments used to get from students is that they weren't learning any languages that employers are using.

I'm not so sure someone who's good with Scheme will be bad with Python or Java. On the contrary, I suspect that such a person is likely to be better suited to build software in either of the latter two. I also suspect that Python is not a particularly good first language for someone who aims for a professional career building software.

> I'm not so sure someone who's good with Scheme will be bad with Python or Java.

They won't be. But students don't understand that, they want to learn marketable skills and are 18 years old. They haven't figured out that if your skills transcend language choice you will be more marketable even if it means you have to spend a few weeks learning a new language for a new job. They lack maturity, which isn't surprising given their age and experience, and so they complain.

Re: Why MIT switched from Scheme to Python (2009)

#37

Isn't this just part of the broader trend of CS departments switching away from teaching computer science to teaching computer engineering, which in turn is part of the more general trend of colleges becoming more vocational? LISP dialects like Scheme are excellent for teaching pure computer science because they are the closest thing to executing lambda calculus expressions. Whereas Python is excellent for teaching a…

Computer Engineering is its own discipline, typically lumped with Electrical Engineering, which is more about system architecture and design and only touches on programming at a low level such as device firmware.

What I think you're really lamenting is the devolution of CS education to vocational programming.

Re: Why MIT switched from Scheme to Python (2009)

#39

Earlier quoted context omitted.

There were plenty of less rarefied CS departments that were concerned about this, and they taught C, C++, or Java in their introductory classes. Ultimately, it doesn't matter. It's your first language, not your last.

How many people do you know who are monolingual?

Only knowing the language you were required to know to pass a bunch of tests when you were 18 is a negative signal.

If someone is interviewing and they only have Java listed, and their school is known for teaching Java for their introductory classes. They're probably not that strong of a programmer.

Re: Why MIT switched from Scheme to Python (2009)

#40
post #35

Earlier quoted context omitted.

Yes. One of the biggest complaints that computer science departments used to get from students is that they weren't learning any languages that employers are using.

To be fair, if you learn computer science well enough to thoroughly understand Scheme, I don't think it'll take more than a few weeks during the summer to learn Python.

I disagree. You can learn the language itself pretty quickly. Finding your way through the expansive standard library will take longer. Getting a good handle on the package ecosystem is a lifetime learning project.
Post reply on HN