Spring 2025 (February 5 – May 9)

Instructor
Ben Fry – fry at mit dot edu

Teaching Assistant
Ahzin Nam – ahzin at mit dot edu

This course is an introduction to working with data for exploration and explanation. The course mixes history and theory of information with a series of projects that apply the ideas directly. Students will start with basic data analysis, then learn about visual design and presentation, followed by more sophisticated interaction techniques. Topics include storytelling and narrative, choosing representations, understanding audiences, and the role of practitioners creating tools to help people work with and make sense of information. Experience with code and/or design may help, but it is not expected or required.

Goals🔗

This class is not a “how to” on creating data visualizations. There are many books, frameworks, and online tutorials for recreating popular work seen online. Those resources can be very useful, but it’s something better learned on your own time. This course is focused on making sense of data, and helping others do the same. We use a mix of work from inside and outside the field, plus professional work to demonstrate different ways of looking at narrative and interactive information design as broadly as possible.

Units and Registration🔗

Listed as 2-4-6, but 1-2-9 would be more accurate. About an hour of lecture, two hours lab, and 9 hours homework per week. Bottom line, expect 12 hours/week.

Listeners are not allowed: this is a hands-on studio course. Similarly, pass/fail is not an option.

We like to have students from as many different departments as possible. Cross-registration from other schools is also welcome.

Assignments and Grading🔗

Because we focus on iteration, expect frequent assignments. They'll always be due 9pm the evening before class. Late assignments are not accepted for credit, except when excused in advance.

Letter grades will be assigned at both the middle and end of the semester. Only the end of semester grade is on record. The following criteria are used for assessment:

  • Completion – Were the projects completed on time?

  • Design – What was the quality of the concept? Has effort been made to lend a unique perspective? Was there enough design iteration and process sketching?

  • Code – What is the student's understanding of code? Were they able to iterate and modify code to implement a concept as intended?

  • Participation – Did the student attend class? Arrive on-time? Did they participate in class lecture discussions and provide feedback for other students during critique? (Absences must be excused in advance!)

Design + Code = 70% of grade
Completion + Participation = 30% of grade

Each of these pieces are important, and interrelated:

  • Completion – This course moves quickly, so if an assignment is missed or not completed in time, it will be very difficult to catch up. Each new assignment builds upon the previous, so missed steps are not an option. This is also about being considerate to the course staff: time spent managing late projects and exceptions takes away from time dedicated to the rest of the group.

  • Design – The “design” of the projects is not about what things look like. It’s about how they work and how they help the intended audience think about a set of data. The first attempt at a design will always be insufficient, and many iterations will be required as you refine your ideas. An all-nighter won’t give you enough iteration to work through the necessary steps for a project. Focus on smaller steps and getting feedback on them before doing your final push. If this is unfamiliar, it will be one of the most important things you can learn from this course.

  • Code – This is not a coding class. If you know how to code, you’ll find that part of the course easier, but you’ll still need to put considerable effort into the design and conceptual part of what you create. On the other hand, if you’re not familiar with code, we’ll help you along and can assure you that you’ll be able to figure it out—but only if you attend class and are engaged.

  • Participation – Significant deductions will be made for students who don't engage or participate. Laptops are essential tools in this class but should not be used during lectures. We have limited class time each week, so make use of it! Starting late or leaving early is not an option—even if it's a working session.

Approach🔗

It is important to understand that this is different from a course in the sciences or engineering because there are fewer “correct” answers: we’re teaching you an approach and skills for thinking about data and design problems.

However, it’s also not just a loosely structured art class: there are important objective truths to learn, practice, and understand.

Schedule🔗

We may make adjustments along the way, so keep an eye on this page.

There are a lot of assignments! Most are sketches or progress check-ins for a longer project. These are smaller steps that build up to a larger idea, so they should not be skipped. Incomplete work is far, far better than no work turned in at all!

We have four units: clocks, storytelling, weather, and deconstruction/reconstruction. These represent four “projects,” and then we finish out the semester with a longer final project that ties everything together.

Assignment links will be posted on the front page for the course, or the assignments page. We will adjust this schedule along the way, to account for the composition and interests of the class, and how the semester is moving.

Week 1

Introduction

Wednesday 2/5

Lecture: Course Overview

Thursday 2/6

Simple and Complex due

Friday 2/7

Discussion: Two examples of information design/data visualization

Week 2

Code and Iteration

Tuesday 2/11

Wednesday 2/12

Lab: Sketching and coding with clocks

Thursday 2/13

A Dozen Clocks due

Friday 2/14

Crit: Clocks

Lecture: Iteration

Week 3

Color and Context

Tuesday 2/18

Twelve O' Clock Iteration due

Wednesday 2/19

Crit: Clock Iterations

Lecture: Color

Thursday 2/20

Color Clocks due

Friday 2/21

Crit: Color clocks

Lab: Context Clocks

Week 4

Finding Stories

Tuesday 2/25

Final Clocks due

Wednesday 2/26

Crit: Final Clocks

Lecture & Lab: Finding Stories in Data

Thursday 2/27

Friday 2/28

Lab: Story finding, working in groups

Week 5

Telling Stories

Tuesday 3/4

Initial storytelling deck due

Wednesday 3/5

Storytelling Presentations

Lab: working in groups

Thursday 3/6

Final storytelling deck due

Friday 3/7

Final Storytelling Presentations

Week 6

Going Small

Tuesday 3/11

Draft mini story due

Wednesday 3/12

Discussion: story progress

Feedback and work in groups

Thursday 3/13

Final mini story due

Friday 3/14

Group Crit: Mini Stories

Week 7

Designing for Dynamic Data

Tuesday 3/18

Wednesday 3/19

Lecture: Weather apps

Lab: weather coding, work time

Thursday 3/20

No assignment due, but the next will be shortly after the break, so make progress now!

Friday 3/21

No Class

Spring Break

Week 8

Weathering the Semester

Tuesday 4/1

Weather progress & sketches due

Wednesday 4/2

Crit: weather status

Lecture: Alternative Weather

Thursday 4/3

Next Weather due

Friday 4/4

Crit: weather updates

Lab: using the phone, deployment, debugging

Week 9

Fit & Finish

Tuesday 4/8

Final weather app due

Wednesday 4/9

Crit: final weather apps

Lecture: kicking off the final project

Thursday 4/10

Final project ideas due

Friday 4/11

Discussion: final project ideas

Week 10

Discovery & Analysis

Tuesday 4/15

Project sketches and initial data due

Wednesday 4/16

Guest Lecture: “Scaled in Miles”

Thursday 4/17

Friday 4/18

Lab: parsing data

Lecture: perception & representation

Week 11

Design & Development

Tuesday 4/22

Initial (code) sketch with data due

Wednesday 4/23

No class: office hours (optional)

Thursday 4/24

Friday 4/25

Lab: quick introduction to motion

Lab: work time

Week 12

Iterate & Refine

Tuesday 4/29

Draft due most pieces in place

Wednesday 4/30

Crit: representation & interaction progress

Thursday 5/1

Near-final due

Friday 5/2

Lab: feedback and help in groups

Week 13

Final Presentations

Tuesday 5/6

All Final Projects Due!

Wednesday 5/7

Day 1: Final Presentations

Thursday 5/8

Friday 5/9

Day 2: Final Presentations