Credits: 2 (1-0-2)

Description

This course is designed for beginners who have no prior exposure to using and writing programs. The first part of the course will focus on “deconstructing” a program written to solve a simple task. As part of this process, students will be introduced to strings, lists and dictionaries and will also learn control flow elements like loops and conditionals. Assignments will focus on modifying and enhancing existing programs.

Following this, the second part will move on to topics such as functions and modules and object-oriented programming. Algorithmic techniques will be introduced and applied to real data. Assignments in this part of the course will encourage students to write (rather than modify) their own programs, sometimes using data from real applications. Python will be the primary programming language used, but some flexibility here will also be allowed.