News for hackers. Stuff that matters.
Re:Why MIT uses Python instead of Scheme for its undergradua... by curun1r on Saturday December 29, 2018 @01:39AM (#18782302)
Same here. When I learned programming at UC Berkeley in the 90s, Scheme was the intro language. It was perfect precisely because it was so far from being the kind of language you'd use to engineer large projects. The first day, the professor spent less than half of the period introducing the entire syntax of the language...it's so damn simple. Beyond that, all learning was abstraction, problem solving and CS concepts. It was learning how to take a very limited set of primitives and construct a larger whole.

I pity the MIT students that will waste so much of their intro course learning what is a vastly more complex language. There will be so many students that will struggle to learn python-specific topics that are irrelevant to learning the act of coding and may decide that CS and programming just aren't for them. Scheme is such a perfect language for this task because it puts so little between the student and the crucial experimentation phase that can instill a fascination/curiosity with programming. And now MIT students will miss out on that.

Re:Why MIT uses Python instead of Scheme for its undergradua... by habitue on Saturday December 29, 2018 @01:58AM (#18782379)
We also live in an era where it's basically impossible that kids getting into MIT's CS program haven't been exposed to programming before. I think it's a romantic idea, but the fact is college isn't where you learn to program, it's where you learn the time complexity of btrees.
Re:Why MIT uses Python instead of Scheme for its undergradua... by Zanni on Saturday December 29, 2018 @05:42AM (#18783021)
This is a really significant point. I mean, I love SICP. I think Scheme is elegant as hell. But I learned to program with Basic in high school, and SICP in Scheme would have seemed like a huge step backward. I know Fortran did, which was my first college-level experience. I can appreciate Scheme now, but I don't think I would have then. And I can only imagine how "kids today," who have grown up on real languages would feel ("real" in contrast to Basic, not Scheme).
Re:Why MIT uses Python instead of Scheme for its undergradua... by mroche on Saturday December 29, 2018 @03:03AM (#18782572)
> it's where you learn the time complexity of btrees.

I’m having flashbacks... Thanks for that ;)

Time complexity was my worst CS topic. At least, for implementing the most efficient system. I’m not an algorithms guy.

Re:Why MIT uses Python instead of Scheme for its undergradua... by JonathanMerklin on Saturday December 29, 2018 @01:58AM (#18782375)
> There will be so many students that will struggle to learn python-specific topics that are irrelevant to learning the act of coding

Correct me if I'm wrong - I just went to an unrespected state school - but I would think that the MIT admissions filter selects for students who wouldn't particularly struggle with something as small as language idiosyncracies, especially in an introductory course.

Re:Why MIT uses Python instead of Scheme for its undergradua... by akhilcacharya on Saturday December 29, 2018 @02:52AM (#18782537)
No, you're right. I'd go so far as to say even people at my unrespected state school wouldn't struggle with things like that.
Re:Why MIT uses Python instead of Scheme for its undergradua... by JonathanMerklin on Saturday December 29, 2018 @03:44AM (#18782687)
Hm, perhaps your state school is "less unrespected" than mine, but my CS program had a very real funnel from "couldn't hack it in Programming 1" to "couldn't hack it in Calculus 2" to "couldn't hack it in Data Structures and Algorithms" to "couldn't hack it in one particular professor's mandatory upper-level courses" to "tripped on their gown."

I digressed a little. Point being: while I'm unsurprised that some % of people from a broader range of abilities couldn't get functions or iteration or inheritance or whathaveyou to stick, I'd be very surprised if ANY % of the culled-by-18 right end of the Bell curve couldn't grok both fundamental concepts and any relevant part of the standard documentation (on which we appear to be in agreement.)

Re:Why MIT uses Python instead of Scheme for its undergradua... by gronne on Saturday December 29, 2018 @03:58AM (#18782736)
If you have never been exposed to programming before chances are you will struggle no matter the name of the school. The name will, most likely, help you get a better job but don’t worry about the skill level attained (unless you went to something like Trump university).
Re:Why MIT uses Python instead of Scheme for its undergradua... by detaro on Saturday December 29, 2018 @06:30AM (#18783150)
> I pity the MIT students that will waste so much of their intro course learning what is a vastly more complex language. There will be so many students that will struggle to learn python-specific topics that are irrelevant to learning the act of coding and may decide that CS and programming just aren't for them.

As someone who has been part of running intro courses using a variety of languages: While I like the Scheme path for various reasons, I do not recognize the effect you imagine at all from the students I've seen. That there are complex areas of Python is basically irrelevant for intro courses, the few pain points are really easy to explain and remember, and Python is great for the experimentation phase (the core is easy enough, the (standard) library ecosystem helps satisfying random interests and can generally also be used without being exposed to problematic parts of the language, REPL)

Re:Why MIT uses Python instead of Scheme for its undergradua... by Santosh83 on Saturday December 29, 2018 @01:57AM (#18782373)
> It was learning how to take a very limited set of primitives and construct a larger whole.

By this measure C should be a popular university intro language too, but it is famously unsuitable as a first language, at least according to academics.

Re:Why MIT uses Python instead of Scheme for its undergradua... by southerndrift on Saturday December 29, 2018 @02:36AM (#18782490)
On the one hand, Scheme has an even smaller set of primitives than C. On the other hand, it's far more difficult to construct the larger whole from those primitives. Additionally, you have all the problems from the compiler when you have to manage libraries, include and object files. With some guidance when students are stuck with the compiler, C is not such a bad language to learn programming, but it doesn't hit the same sweet spot as Scheme.
Re:Why MIT uses Python instead of Scheme for its undergradua... by Ar-Curunir on Saturday December 29, 2018 @04:20AM (#18782789)
At Berkeley we've switched out the SICP-based 61A for a Pythonic 61A, similar to MIT. It certainly hasn't driven away any CS students; on the contrary, the number of CS majors has exploded.
Re:Why MIT uses Python instead of Scheme for its undergradua... by hopler on Saturday December 29, 2018 @10:25AM (#18783971)
The article is 10 years old. Has MIT graduated a generation of failures?