Course schedule for Spring term 2026 (Mar 30 – Jun 3).
- slides
- Discussion: truth in the age of fake news and AI
- Course overview and welcome
- No class (instructor away)
- No class (instructor away)
- slides
- Workshop: pitch your story ideas
- Assignment 1 released (due Monday Apr 6): Tell the class a 5-minute story
- Welcome message | Supplemental welcome message
- Learning remotely: tools, tips, and tricks for engaging with online aspects of the course
- Introduction to storytelling (Khan Academy / Pixar)
- What makes a great story? (Khan Academy / Pixar)
- Exercise: Telling a story about a vivid memory (Khan Academy / Pixar)
- Structuring stories for effective communication (Khan Academy / Pixar)
- Using pictures to tell a story (Khan Academy / Pixar)
- Pitching your story (Khan Academy / Pixar)
- Giving constructive feedback (Khan Academy / Pixar)
- Using feedback to improve your story (Khan Academy / Pixar)
- You may find some inspiration by taking a look at some Moth Radio Hour stories
- Discussion: the pursuit of truth
- Workshopping story ideas
- Discussions about stories (part 1)
- Discussions about stories (part 2)
- Peer feedback and discussion (no slides)
- slides
- Data representations, effective figures, grammar of graphics
- Additional office hours (sign up)
- slides
- Workshop: pitch your data story ideas
- Assignment 2 released (due Monday Apr 13): Data story remix
- Introduction to representing data (Khan Academy)
- Designing effective scientific figures (Aiora Zabala)
- Maximizing the data-to-ink ratio (medium.com)
- A Layered Grammar of Graphics by Hadley Wickham
- The Grammar of Graphics by Leland Wilkinson
- Data story inspiration: FiveThirtyEight, Reddit: DataIsBeautiful, Towards Data Science, Minute Physics, Kaggle Blog, IQuantNY, New York Times: Science, Washington Post: Visual Stories, Distill.pub
- Communicating with sound: in-class discussion with director, editor, and producer Sam Green and class "field trip" to a showing of 32 SOUNDS
- Discussion: telling effective stories about data
- Workshopping data story ideas
- Discussions about data stories (part 1)
- Discussions about data stories (part 2)
- Peer feedback and discussion (no slides)
- slides
- Getting set up in Google Colab
- Introduction to programming concepts
- slides
- Using AI tools to accelerate development
- slides
- Workshop: brainstorm project ideas
- Assignment 3 released (due Monday Apr 20): Build something cool
- Getting set up on Google Colaboratory (cs-for-psych)
- Introduction to Programming for Psychological Scientists
- High-level introduction to Python
- Codecademy's Introduction to Python
- Learning to code with Python and Jupyter Notebooks
- Introduction to using the command line
- Git overview: slides
- Project management and version control with git and GitHub:
- Overview of Git and GitHub
- Git basics part 1: fork, clone, and status
- Git basics part 2: add, rm, mv, commit, push, and pull
- Intermediate git: ignore, revert, checkout, branch, merge, and remote
- Handling git merge conflicts
- GitHub project management tools
- Optional (ungraded) assignment: GitHub Fundamentals [Accept assignment]
- Discussion: intro to programming
- Python continued: list comprehensions and decorators
- Assignment 3 Q&A, introduction to Python modules, preview of Python data science stack [slides]
- slides
- Introduction to The Collaborative
- No class (instructor away)
- slides
- Overview and demo of NumPy, Pandas, Matplotlib, Seaborn, and Hypertools
- slides
- Hackathon: build your first notebook-based data story
- Assignment 4 released (due Monday Apr 27): Tell a "real" story about data
- Modules and Packages (from Whirlwind Tour of Python by Jake VanderPlas)
- NumPy and Pandas (from Python Data Science Handbook by Jake VanderPlas)
- Matplotlib and Seaborn (from Python Data Science Handbook by Jake VanderPlas)
- Grammar of graphics in Python (towardsdatascience.com)
- Data visualization overview
- Visualizing high-dimensional data with Hypertools
- Interactive lecture: exploring and visualizing a sample dataset [notebook]
- DataCamp — free access for enrolled Dartmouth students (invite link pinned in Slack
#general)
- Introduction to NumPy [slides]
- Introduction to Pandas [slides]
- Part I: data wrangling
- Part II: data wrangling continued, basic plotting
- Discussion with Climate Interactive (2024)
- Discussion with Vermont Department of Health (2022) [slides] [sample notebook]
- Story ideas workshop and brainstorm
- Debugging session (Part I)
- Debugging session (Part II)
- Debugging session (Part III)
- Story critiques
- Peer feedback and discussion (no slides)
- slides
- Introduction to the Part II cycle: pitch, refine, critique
- New tools and demos
- Additional office hours (sign up)
- Hackathon and brainstorming session
- Peer feedback and discussion (no slides)
- Topic TBD based on class interests
- Additional office hours (sign up) or hackathon/demos
- Hackathon and brainstorming session
- Peer feedback and discussion (no slides)
- Topic TBD based on class interests
- Additional office hours (sign up) or hackathon/demos
- Hackathon and brainstorming session
- Peer feedback and discussion (no slides)
- Topic TBD based on class interests
- Additional office hours (sign up) or hackathon/demos
- Hackathon and brainstorming session
- No class this week
- Peer feedback and discussion (no slides)
- Final data story presentations and celebration
- Last day of class
- Data story project template — use this as a starting point for your projects
- General data story instructions — full details on deliverables and evaluation
- Data story video introduction