Introductory Missive

January 2013

About the Class

Students in almost every field must use computers effectively, but many know only how to use a word processor, spreadsheet, and a web browser. CS0931 is specifically developed for students in the humanities and social sciences to provide you with the knowledge you will need to approach problems computationally, to formulate appropriate hypotheses for those problems, and to use computers to test those hypotheses. We will focus on real-world applications to show you how to effectively use computing in your discipline.

You can find the course website at


This course aims to help you learn the following:


The course will be split into two units and a final project. The units will introduce computational skills and tools, each followed by a student-designed unit project that answers a real-world question using computation.

The final project poses a real-world question and then rigorously analyzes it using computation. The final project may significantly extend a unit project or address a completely new topic.

Unit 1: Voting Patterns

In the first unit, we will discuss how to rank senators on a liberal-to-conservative spectrum by analyzing voting patterns. Using Excel, we will learn how to work with large amounts of data. We will use Excel functions to analyze voting tendencies of the senate with respect to a particular senator. We will publish results in the form of a website.

Unit 2: Textual Analysis

In the second unit, we will move from analyzing numbers to analyzing texts. We will use Python, a programming language, to parse Herman Melville's Moby Dick. We will compute statistics such as the average word length and vocabulary size, and we will build a concordance of the text and analyze word frequencies.

Final Project

The final project will combine the skills and tools learned over the semester to pose and answer a question relevant to a non-computational field. Lectures during this time will introduce new ways to present results, including tests for numerical significance and data visualization tools.

Staff and Hours

The recommended way of getting in touch with the course staff is to e-mail, which is easy to remember and will get you the fastest response. If you would like to email only the Head TA, instructor, and faculty, use

Staff hours will be posted on the website at



The TAs


All assignments count towards the final grade in the class. The work load varies with each week, but expect an average of 10 hours a week dedicated to this class (including lectures, homeworks, and projects).

Weekly Homeworks

Homeworks will consist of computer assignments (in Excel and then Python) and short readings. The homework lengths will vary each week, but will tend to be shorter in the beginning of each unit and longer towards the end.

The homeworks are designed to reinforce useful material learned in class, and provide scenarios that will be useful for the class projects. Part of learning to program is to practice!

Unit Projects

After each unit, there will be a final project designed by the students to demonstrate the skills they have learned and developed. Students will first write a proposal and discuss their project with the course staff. They will then complete the project and report their results.

Final Project

Students will work on the final project for the last few weeks of the semester. TAs and faculty will be available for guidance. Students will include a timeline in their proposal, and are expected to keep to this timeline. We expect that a good project might have some obstacles, and we aim to give ample time to overcome these issues.


Homework & Project Grading

Homeworks will be graded by the TAs and returned with grades and comments. Solutions will not be posted, but meetings with TAs can be arranged to discuss homework solutions.

Projects will be graded by the instructor and faculty. The unit projects and the final project will be graded in a one-on-one meeting with the student and one of the course staff.

Overall Grade

The overall grade will come from homeworks, projects, and classroom participation. The grade will be calculated as follows:

Component% of Overall Grade
Classroom Participation10%
Unit Project #1: Voting Patterns20%
Unit Project #2: Text Analysis20%
Final Project30%