Tools for Thought

Spring 2026

Humanity's technological progress is defined in part by the development of tools for thought (TfT) which augment our cognitive capabilities: mnemonics, writing, diagrams, calculators, notation, and more. Computers have powered a TfT revolution, as seen through software such as data visualizations, search engines, digital maps, computational notebooks, and generative AI. This course provides the foundations for understanding and building the tools for thought of the future.

We will explore computational TfT from several perspectives:

  • Psychology: How can theories of cognition inform the design of TfT? We will focus principally on theories of memory, perception, problem solving, and learning.
  • History: What can we learn from the near and distant past of TfT to build a better future? We will examine TfT ranging from oral tradition to medieval codices to the origins of the modern internet.
  • Engineering: What are the design trade-offs involved in building TfT? How can we build TfTs that are easy to archive, scale, share, and customize?

Lectures

01/22
all cited works
01/27
Mnemonics I
Science and Tradition of Memory
all cited works
02/05
Reading II
Reading Augmentation Systems
02/17
[long weekend]
02/19
Visualization I
Principles of Perception
all cited works
02/24
Visualization II
Data Visualization Systems
all cited works
03/12
Guest lecture: Shriram Krishnamurthi
03/17
Notation I
Compacting Concepts
all cited works
03/19
Notation II
A Programming Language
03/24
[spring break]
03/26
[spring break]
04/09
Programming III
(continued)
04/16
Guest lecture: Serena Booth
04/21
AI II
04/23
AI III
04/28
[reading period]
04/30
[reading period]
05/05
Project presentations

Assignments

Assignment
Out Date
Due Date

April 3

April 10

Final Project

Deliverables
Due Date

Final Presentation

May 5

Final Writeup

May 8

Calendar

Staff

Will Crichton
Favorite Pokémon: Squirtle

Thinker and tinkerer of tools for thought, programming language researcher, singing and tennis enthusiast.

Will Crichton

Hours: Tuesday 1-2pm, CIT 333

Eleanor Park
Favorite Pokémon: Eevee

Studying CS + Cog Sci, and otherwise probably crafting, running, or making experimental coffees at home!

Eleanor Park (HTA)

Hours: Wednesday 4:30-6 pm, CIT 102

Charlene Chen
Favorite Pokémon: Charmander

Enjoy mixing random things in my banana bread and getting to know you all!

Charlene Chen (UTA)

Hours: Tuesday 3-4 pm, CIT 102

Jinho Lee
Favorite Pokémon: Wobbuffet

Interested in intersection of education and CS, theatre + literary arts, and hitting my goal on Beli!

Jinho Lee (UTA)

Hours: Monday 5-6 pm, CIT 102

Policies

Assessment

Grades will be determined by a weighted average of assignments (50%), a midterm (25%) and a final project (25%). The final project will include an ungraded checkpoint for students to get early feedback on their progress.

Course Materials

There are no costs to take this course. All lecture notes will be made freely available online.

180 Hours of Work

Over 14 weeks, students will spend 3 hours per week in class (42 hours total). Assignments are expected to take approximately 10 hours per week for the first 10 weeks (100 hours). The final project is expected to take approximately 10 hours per week for the last 4 weeks (40 hours). Total: 42 + 100 + 40 = 182 hrs.

Attendance Policies

Students are strongly encouraged to attend lecture in-person for two reasons. First, dedicated focus in a distraction-free environment leads to better learning outcomes. Second, Will enjoys seeing the shining faces of his students. However, attendance is not mandatory. Lectures will be recorded.

Extensions

Given the weekly cadence of assignments, students must submit work on time to avoid falling behind and to ensure grades are released in a timely manner. All students are provided three late days which they can use at their discretion, maximum of one per assignment.

Accessibility and Accommodations

Brown University is committed to full inclusion of all students. Please inform me early in the term if you may require accommodations or modification of any of course procedures. You may speak with me after class, during office hours, or by appointment. If you need accommodations around online learning or in classroom accommodations, please be sure to reach out to Student Accessibility Services (SAS) for their assistance (sas@brown.edu, 401-863-9588). Undergraduates in need of short-term academic advice or support can contact an academic dean in the College by emailing college@brown.edu. Graduate students may contact one of the deans in the Graduate School by emailing graduate_school@brown.edu.

Academic Integrity Policy

In general, it is acceptable to get help to a problem, and it is not acceptable to get a solution to a problem. This rule applies no matter whether you are consulting Google, an LLM, a TA, a fellow student, or any other resource. But remember: only your instructors and TAs are trained to help you without giving you the solution. We will not prevent you from using other resources, but you must be careful when using them. Specifically:

  • Group work: It is acceptable to work on all problem sets in a group. It is acceptable to collaboratively generate ideas that help you make progress on an assignment. It is not acceptable for one person to solve a problem, and another person to copy their solution.

  • The internet: It is generally acceptable to use search engines like Google and help sites like StackOverflow, especially for problems unrelated to the learning goals of the course. For example, if you get a mysterious compiler error, it’s acceptable to Google the error if you don’t understand the error after reading it. It is not acceptable to search for complete solutions to all or significant portions of an assignment.

  • LLMs: It is generally acceptable to use AI-based coding tools such as ChatGPT, Claude, and Cursor for either (a) getting help in the same contexts that you would use Google & StackOverflow, or (b) generating small snippets of code that you could otherwise write by hand, given enough time. However, you should not use LLMs to skip the parts of a problem related to the learning goals of the assignment / course.