1.1 The Python trial

Thank you for participating in this trial of a proposed new first year computing course. During this trial we would like you to consult demonstrators as much as you like. It is being run for us to iron out the problems in the course, and so we will be most appreciative of any feedback that you can give us about the course or the handbook. Of course, we also hope you will find the trial interesting and useful!

Like the Pascal course you did last year this trial consists of the following elements:

Using the system
Logging in; using the graphical interface; files; using the Python interpreter; creating, editing, storing and running programs. You will learn some of the skills associated with the use of the Unix operating system.

The elements of Python
Learning enough of a programming language to write simple but useful programs, while being introduced to the concepts of procedural programming.

To introduce yourself to the basics of Python you will need to read through Chapter 3, ``The elements of Python'' and do the exercises given as you go along. If you do not understand how to tackle a particular exercise please consult a demonstrator.

The handbook should contain all the information you need to complete the exercises and the problem you will be doing.

Programming Problems
Once you have gone through the introduction to Python we would like you to attempt a more substantial problem. You may select one from the following list (you may select the one you did in the first year if you wish):

Quadratic Equation; straight line fitting by least squares
Nuclear decay and the Doppler effect
Numerical Integration by Simpson's rule and by a Monte Carlo method
Solution of non-linear equations; solution of a differential equation
Polynomial curve fitting by least squares
Graph plotting; Fourier Analysis

Note: whichever problem you choose, for the purposes of the trial it will be recorded as experiment CO91

Whilst it is not required, we would like you to use your logbooks to make notes as you do the course; in any case, you will not need to produce a write-up of the problem you attempt. Rather, we will ask you to discuss it with a demonstrator and fill in a questionnaire.

This course deliberately covers only a subset of Python, which is an extremely powerful and flexible language. In doing the course you should acquire skills applicable both to Python and to programming in general. Python has been chosen because it is possible to teach enough of the language to write useful programs relatively quickly, yet it is potentially a very powerful language, which is being increasingly used throughout academia and the commercial software industry.