Course Information

Syllabus

Homework

Labs

Honor Code

Course Objectives

Projects

Help and Reference Info

Moodle

Course Description

This course will introduce you to the basic concepts in computer science such as the design and function of a computer, the role of a programming language in solving problems, the design of algorithms and the software development process. The vehicle for understanding these concepts will be the programming language Python. Python is one of the most versatile and yet straightforward languages whose simplicity of syntax allows for a very fast graduation to solutions of complex problems. As we learn Python we will be using it to solve practical, interesting problems in a wide variety of fields: genetics, linguistics, art, music, mathematics, humanities, statistics, economics, etc.

No previous programming experience is necessary in order to take this course. We will lead you through the art and science of programming; there will be plenty of resources to assist you. By the end of the first week you will be writing programs and by the end of the semester you will create your own, unique, large project. In addition to learning Python, the class will also engage in discussions about computer ethics.