What would you suggest as a high school first language?
- by ldigas
Edit by OA: After reading some answers I'll just update the question a little. At first I put it a little bluntly, but some of those gave me some good arguments which have to be taken into consideration while making a stand on this one.
(these are mostly picked up from comments and answers below).
A few things to take into account:
to many pupils this is a first programming language - at this stage most of them have trouble grasping a difference between data types, variable passing, ... and whatnot, less alone pointers and similar 'low level stuff' :)
they will all have to pass this to get into next grade (well, big majority of them anyway)
not all of them have computers at home, not all of them are willing to learn this, less alone interested in - so the concepts have to be taught on a finite time scale in school hours (as well as practice on computers)
free literature is a bonus - the teacher will make some scripts and handaways, but still ... I wouldn't like to bear the parents with the burden of buying expensive literature (also, english is not a native language here ... and although they are all learning it, their ability to read it fluently is somewhat questionable)
somebody gave an argument - "a language which does not get in the way of ideas" - good one
accessibility on different platforms in not expecially important at this point - although most of the suggested ones are available on win as well as linux - not many macs in this part of europe (their prices are sky high for anything but specialised usage)
I will check what are the licencing issues on ms express editions about using it massively in high schools for purposes like this - if someone has any info about this, please, do not be shy with it :)
A friend of mine, informatics teacher - in EU it comes as something as junior cs teacher, in a local high school asked me what I thought about what should be the first language pupils should be taught? It is a technical school (a little more oriented towards mathematics than the gymnasium, but not computer oriented totally).
So I'm asking you - what do you think should be the first language pupils are exposed to in highschool?
They have been teaching Pascal so far, but she's not sure that's a good course.
She thought about switching to C (which I resented; considering not all pupils have interests in programming, to start with, and should be taught something higher level since they are just gripping the idea of a loop and such ... for a start), I suggested python or ruby (preferably py since it handles all paradigms).
What is your opinion on this one?
I looked, but didn't find a similar question on SO, so if there is one, please just point me towards it.
Edit: The assumption is that none of the pupils have been exposed to any programming in junior school.
See also:
What is the best way to teach young kids some basic programming concepts?
Best ways to teach a beginner to program
How and when do you teach a kid to code
What is the easiest language to start with?
High School Programming