Programming is a core competence for advanced computer literacy. Modern information systems and applications of all kinds are integrated with programming/scripting languages to allow advanced usage and adaptation. Programming skills are also necessary to exploit the extensibility of open source software. Finally, there is a need to ensure that talented young people are attracted to computer scien ...