Programmers! What language for a total novice?

Sounds like we are pretty much in agreement on all these things.

I’m reorganizing our college’s introductory programming classes, and here’s what we’re going to do for our computer sciences students:

  • STOP teaching Python; there’s some strange syntax going on, and lots of built-in’s that aren’t available in other languages, which I think is confusing for students who then study other languages. Beyond the introductory class, there wasn’t anything to use Python for (although I personally know that Python is used in large corporations, mostly for install scripts). I liked the language, but students didn’t get a chance to use it after the class was done.

  • Have C/C++ as a SECOND class, since the students still need it on their resumes, but we don’t try to use it as an introductory class

  • The FIRST class is now Java, but the first semester is using Java as a procedural language. The second semester introduces objects and classes, and will include some UML topics. I’m basing the class on the Stuart Reges book “Building Java Programs” - it has great reviews on Amazon, and is a great introduction to programming.

JohnGalt, that sounds like a good plan.

I don’t want to get into the middle of the Python fight, but your characterization of it is correct.

The problem is, more and more of the open projects are falling back on Python as plug-in writing language of choice. And this isn’t industry-specific: from Blender to openERP, Python is the hammer everyone takes to their nails. So outside CS schools, Python gets a bit of play. But so does Java, IMO they’re pretty much of a muchness if picking a lang for RW usability.