How to Learn a New Language: A Novel Introductory Programming Course

‘How to Learn a New Language’ is an introductory programming course, delivered during the first semester of a work-based Software Engineering degree programme, or apprenticeship. Students are introduced to foundational programming concepts, up to and including object-oriented principles. The course takes a language agnostic approach, using examples from a range programming languages and highlighting the underlying similarities and key differences between them. The course is also designed to expose students to existing codebases from the outset, rather than focusing on writing small programs from scratch. The aim is to create adaptable Software Engineering graduates, capable of mastering whatever technologies they encounter in the workplace. As such, the course helps address concerns that graduates lack important employability skills, such as adaptability, and significant emphasis is placed on working in teams. The course has received positive feedback from students, preparing them to succeed both at university and in the workplace.