Live data from Hacker News

Python is now the most popular introductory language at top U.S. universities

cacm.acm.org

61–70 of 375 posts

Re: Python is now the most popular introductory language at top U.S. universities

#61
All imo... Python as the "101" language is a pretty good idea for universities in general because many fields do data crunching of sorts and Python is fairly widespread in the scientific community.

As long as signup to the class is open for all (and not just CS-students) there will be healthy benefits for other departments (economics, biology etc.)

Aside from that I've always kind of defended high level languages as entry level teaching tools. The closer to pseudocode/natural language the better. Once you start to think about solving problems like a programmer you can switch languages relatively painless anyway.

With the advent of RubyMotion etc. I'm starting to wonder if there would be some value in starting to teach programming on mobile platforms in a high level language as 101 (i.e. the first ever code they write is mobile code). From my experience the "app classes" are always popular because there's a certain cool factor in being able to show a friend stuff you did on your own mobile device. If you'd tailor those classes to low-level phones it would be pretty helpful for certain areas of the world where many families have at least one cell phone but often no computer. Writing the code on the cellphone itself is pretty painful but at least one could write it at a university/school with a computer and carry the stuff that was built home.

Re: Python is now the most popular introductory language at top U.S. universities

#62
post #2

a language without types, without extensive research? Then, why not C/D/Pascal. i strongly believe for universities sml/ocaml/haskell or even rust are far better choices. I prefer sml.

1. C, D and Pascal dont have garbage collection. 2. An argument can be made for starting with dynamically typed languages before moving to static typing.

Re: Python is now the most popular introductory language at top U.S. universities

#63
In college our intro classes were in C++. While its a tough language I do wonder if it was advantageous to forcefully learn about 1) value vs reference types via pointers and 2) how allocation maps into memory space. Not having that level of depth kinda worries me

Re: Python is now the most popular introductory language at top U.S. universities

#64
post #39

Yes, Python is an excellent language for beginners, but so is Ruby in my opinion. Not trolling: why nobody is using Ruby in introductory courses?

Biggest reason is that Python has been around for longer (at least in terms of popularity in the west)

Re: Python is now the most popular introductory language at top U.S. universities

#65
post #36

Is sad that students never get to learn something like http://ocw.mit.edu/courses/electrical-engineering-and-comput... they could easily learn any other language after, learning just java or python is practical only to prepare them for a corporate job.

It's not as though students won't dive deeper after their introductory CS course.

Re: Python is now the most popular introductory language at top U.S. universities

#66

Hey there! I've just started learning to code for building web apps (I know about Fortran 90, it doesn't fit very well on the browser haha), and it took me a while to decide. I looked up in an endless number of hacker websites, but at the end I'm sorry for betraying Python lovers... I'm learning ruby on rails..! I've just started learning, please tell me If it's best to learn python (I'm not looking for an easy langu…

It is perfectly fine to learn ruby; Rails is one of the nicest frameworks to get started with --I do prefer python and django, but rails is pretty nice too

Re: Python is now the most popular introductory language at top U.S. universities

#67
post #29

Earlier quoted context omitted.

Couple of thoughts: 1) I hope they are teaching Python 3.x instead of 2.7.x. 2) A good portion of the schools cited in the Appendix are not "computer" schools. UC Davis for example, is the last place I would attend for a CS degree (I know many students at UC Davis -- it's much better suited for other degrees). 3) My school (CSU Sacramento) does not even offer any Python courses, but there's a lot of Java and C course…

Why do you think the flavor of Python taught matters? I would say that compared to learning how to write and understand a small program, the difference between Python 2.x and Python 3.x is trivial. (I'm talking about learning the language; for a large Python 2.x code base, the transition to 3.x is likely to have unclear payoff.)

I think it's important teach what's relevant in the current day, every likes to parrot the "Python 3 has no support" line but it's simply not true[1].

The developers have said multiple times there will be no 2.8 and the 2.7 line will only receive security fixes. Python 3 is the future of Python and not teaching it to students would be a disservice to them.

[1]: https://python3wos.appspot.com/

Re: Python is now the most popular introductory language at top U.S. universities

#68
post #39

Yes, Python is an excellent language for beginners, but so is Ruby in my opinion. Not trolling: why nobody is using Ruby in introductory courses?

I've taught both, and IMHO, the Ruby is less suited for the job of an introductory language because a block (i.e. an anonymous function) is a hard concept for a beginner to grasp and a core part of idiomatic Ruby. Python's syntax simply has "less magic" and is more regular. Ruby's syntax seems to be suited for either folks who don't really want to know what's going on (just give me a DSL and leave me alone) or students who have one language under their belt and are looking for to branch out.

That said, Ruby includes a lot of interesting concepts, and while I don't believe it's an ideal first language, those concepts certainly belong in a CS program.

Re: Python is now the most popular introductory language at top U.S. universities

#69
post #39

Yes, Python is an excellent language for beginners, but so is Ruby in my opinion. Not trolling: why nobody is using Ruby in introductory courses?

mainly the fact that python was designed to teach programming and its community has pushed that aspect of it; ruby's community, IMHO, tends to be more for cool, shiny things, and faster changes, which makes it less suitable as a teaching language

Re: Python is now the most popular introductory language at top U.S. universities

#70
post #29

Earlier quoted context omitted.

Couple of thoughts: 1) I hope they are teaching Python 3.x instead of 2.7.x. 2) A good portion of the schools cited in the Appendix are not "computer" schools. UC Davis for example, is the last place I would attend for a CS degree (I know many students at UC Davis -- it's much better suited for other degrees). 3) My school (CSU Sacramento) does not even offer any Python courses, but there's a lot of Java and C course…

Why do you think the flavor of Python taught matters? I would say that compared to learning how to write and understand a small program, the difference between Python 2.x and Python 3.x is trivial. (I'm talking about learning the language; for a large Python 2.x code base, the transition to 3.x is likely to have unclear payoff.)

Well, from my perspective, students should learn on current gen tech, be it Python 3.x or Java 8, C++11, etc.

I agree that simply learning some programming has no bearing on the language version, etc... however, as students get familiar and start to experiment on their own, they may learn "the old way" of doing things.

There is no downside to teaching Python 3.x, there might be a downside to teaching 2.7.x.

Post reply on HN