Course Information for Fall 2016
Time: MWF 10-10:50 and 11:00-11:50
Place: Lovejoy 215
Final exam: Saturday December 17, 2016 at 1:30 pm (Lovejoy 215)
Instructor Information
Prof. Stephanie R. Taylor
Office: Davis 114
Email: s r taylor _at_ colby _dot_ edu
Office hours: Mon 4-5, Tues 9:30-11:45 and 4-5, Thurs 1-4
By appointment (email me), and whenever my door is open
Prof. Bruce Maxwell (Labs)
Office: Davis 112
Email: b maxwell _at_ colby _dot_ edu
Office hours: whenever his door is open, Monday evening after orchestra rehearsal
Course Description
This course is an introduction to computational thinking: how we can describe and solve problems using a computer. We will use scientific applications to motivate how and why we would would want to write procedures, control the flow of information and processes, and organize information for easy access and manipulation. The techniques you learn will be applicable to any kind of programming you may wish to do in the future.
Learning Goals
- Students can read a simple program and correctly identify its behavior
- Students can convert a problem statement into a working program that solves the problem.
- Students understand abstraction and can break down a program into appropriate procedural and object-oriented components
- Students can generate an approximate model of computer memory and describe how an algorithm affects its contents.
- Students can communicate the result of their work and describe an algorithm
Links to Python Resources
- Python.org
-- This is the main source for all documentation on Python. This documentation can be downloaded to your computer so that you don't need web access to view it. Note that we will be using Python 2.7 in lectures and labs.
- For an informal introduction to Python, they have a tutorial
- For a list of functions and data types, refer to the library reference documentation.
- Visualize the memory of Python with Python Tutor. This is a really helpful resource. They don't visualize exactly the same way we do at Colby, but it is quite close.
- Free Online Books on Python
- How to Think Like a Computer Scientist (Python)
- A Byte of Python
-
How to Think Like a Computer Scientist, Interactive Edition
This book has video lectures and it has editors where you can write, run, and test code
- Python Practice Book
- Welcome to Python for you and me
- Free Online tutorials in Python
Recommended Textbook
John Zelle, Python Programming: An Introduction to Computer Science, 1 ed., Franklin Beedle & Associates, 2003.
Note: This textbook is not required. Also note that there is a second edition, but that it is geared for a different version of Python.