DUPE: http://stackoverflow.com/questions/4769/what-is-the-easiest-language-to-start-with
What do you think is the best language to teach college students in an introductory computer science?
DUPE: http://stackoverflow.com/questions/4769/what-is-the-easiest-language-to-start-with
What do you think is the best language to teach college students in an introductory computer science?
I'd go with C, learning the basics: How do i talk to a programmer? And not having to go into "oh the file needs to be the same name as the class, wtf is a class?".
Learn how to walk before you run.
Java and C++ are probably the most popular. Python is easier to learn. Neither Python nor Java give a proper appreciation for low level concepts, which is not a bad thing to teach though not necessarily something you need to get into for a first course.
I'd consider scheme a poor choice since it's tougher to find a use for it in the real world.
Pascal has been designed with this intend. But I would choose a useful language such as C.
I am a firm believer that C is a great language to start with in first year.
Of course, you could start with Java/Python/VHLL and come back to C, but I see little reason for doing this and I've yet to hear a good argument supporting the Java -> C transition either.
That's kind of a hard question to answer because it really depends on what you want to do. Computer Science is kind of an umbrella term so I'm assuming you want to be a programmer here. In my experience I picked up Java very quickly using link text but I found it a little bit of a challenge going from that to C. Java(I should say that book) let me focus on learning how to program rather then learning the machine intricacies that sometimes come with a language like C. And of course I'm kind of comparing apples and oranges here, too, because Java is an object oriented language and C is procedural(I know you can do oop in C, I'm just using generalities here).
Hope that helps.
I believe Python is getting increasingly popular for teaching computer science.
See Python Programming: An Introduction to Computer Science or Introduction to Programming using Python or Why Python is a great language for teaching beginners in introductory programming classes
Why python? In my opinion:
It is nice to have a shell where you can try out stuff, write simple function or call functions. Being able to do this without going throught the edit-compile -run cycle is probably a good thing. Especially, if you start programming you might have a lot of syntax errors in your code. Then the error messages of a compilers can be frustrating. In a shell you get immediate feedback.
Python has a clean and efficient syntax. You don't have to type much to get something done.
Python has "batteries included" - meaning: it ships with libraries for pretty much everything.
You can teach procedural, object-oriented and functional style programming