Welcome to the pre-course for the unit CM10227 - Principles of Programming I.

The ability to specify, design and write substantial programmes for a computer is fundamental to computer science … the programme you are about to join is not an I.T. programme (it is not purely about the use and application of computers). Even if you intend to progress to a career that does not involve computer programming, an in-depth understanding of the problems involved in the construction of computer systems is extremely important

The aim of this introductory session is to give you an idea of what we will do and the tools we will be using in this unit. Mainly we want to give you the opportunity to ease into the academic year and to obtain a head start.

The first year Programming units are more than learning a programming language. We will look into problem solving techniques, provide you with the necessary concepts to teach yourself any programming language you want and to compare different ones to find the one most suitable for the problem you need to solve. We will also study basic algorithms to solve common problems, general design and implementation strategies. We will do this using two languages: Python and Java.

The pre-course will give you a taste of both languages. Hope you enjoy it. We have even thrown in a competition. If you have any questions, you can always reach me by email.

Marina 2010-08-18