Computational Journalism

This site is for the Computational Journalism class. Visit for Stanford's Computational Journalism Lab.

COMM 177A/277A

Official course description via the Stanford Bulletin:

Focuses on using data and algorithms to lower the cost of discovering stories or telling stories in more engaging and personalized ways. Project based assignments based on real-world challenges faced in newsrooms. Prior experience in journalism or computational thinking helpful. Prerequisite: Comm 273D, COMM 113/213, or the consent of instructor.

In a nutshell

This class is about how to intentionally use computational techniques to search for and collect information, to filter and reduce it to its most newsworthy components, and to publish our findings to the world. It is not a traditional computer science class, but programming is necessary to adeptly (and sanely) accomplish this work. It is not a traditional journalism class, but reporting and research is necessary to create civic and moral impact.


Meeting hours

Where: 450 Serra Mall, Building 160, Room 317

When: M/W 10 - 11:50AM

Office hours

Where: 450 Serra Mall, Building 120, McClatchy Hall, Room 342

When: Monday/Wednesday, 3-5PM, or by appointment (

Finals schedule

There is no final for this class.


There is no required book for this class. However, I highly recommend the following texts, which can be read online for free but are worth purchasing:


The allocation of points can be found on the Homework page. The scale is set at the standard A: 90%, B: 80%, etc.


Though I will be posting notes on the site and web development is often a job done just fine remotely, I expect you to physically be in class barring any extreme circumstances.

For every session in which I've marked you absent, 10 points will be docked from your grade.

Syllabus and class structure

Ideally, a typical class session will look like this:

The exact order of topics and readings are in flux but this is what I expect students to have by the end of this class: