January 22nd, 2012
|10:14 am - Programming languages in schools|
I have just written a post on the new computing curriculum for schools. People might be interested in the list of suggested programming languages. This is not mandated, but I think it is interesting. It is found on page 13.
Every student should have repeated opportunities to design, write, run and debug an executable program. What an executable program means can range widely depending on the level of the student and the amount of time available. The following are included in programming:
- Small domain-specific languages, such as instructions to a simple robot, or Logo-style turtle.
- Visual languages such as Scratch BYOB or Kodu.
- Text-based languages, such as C#, C++, Java, Pascal, PHP, Python, Visual Basic, and so on.
- Spreadsheet formulae
I suppose the question is whether you are teaching a language to teach about programming as a concept, or develop skills in that language. I think the former makes more sense in a school context, because by the time these people are out there writing real code, all the languages will have changed again.
|Date:||January 23rd, 2012 05:57 pm (UTC)|| |
I don't think it's a clean separation. Knowing how to code is a skill that transfers from one language to another (with some exceptions: object-oriented is somewhat different from procedural, LISP is different from everything). But a great way to get a sense for programming as a concept is to actually do it. I'd favour hands-on experience in a real, current language over something more conceptual. By giving students experience in a real language you increase their ability to do something with it out of school; and I don't think you handicap them by teaching them a language that later becomes obsolete.