18.S191 | Fall 2022 | Undergraduate

Introduction to Computational Thinking


Course Meeting Times

Lectures: 2 sessions / week, 1 hour / session 


There are no prerequisites.

Course Description

Three fields, one course: Computer Science + Mathematics + Applications

This class uses revolutionary programmable interactivity to combine material from three fields creating an engaging, efficient learning solution to prepare students to be sophisticated and intuitive thinkers, programmers, and solution providers for the modern interconnected online world.

Upon completion, students are well trained to be scientific “trilinguals,” seeing and experimenting with mathematics interactively as math is meant to be seen, and ready to participate and contribute to open source development of large projects and ecosystems

Topics include:

  • Images, Transformations, Abstractions
  • Social Science and Data Science
  • Climate Science

Previous versions of this course, with various applications, were taught in Fall 2019, Spring 2020, Fall 2020, and Spring 2021.


Tuesday sessions consist of prerecorded video lectures, released on YouTube and played live on the course website. Thursday sessions consist of a half-hour prerecorded video lecture followed by a half-hour online discussion. 

Technical Requirements

Students need to install the Julia programming language, as well as other tools and packages.

Grading Policy

The final grade is 80% problem sets and 20% interactive quick questions.

  • Problem sets are released on Friday and due the following Friday by 11:59pm EST. They have equal weight; your lowest score will be dropped.
  • Interactive quick questions are due before Wednesday at 11:59pm, but are best done on Monday, during or right after the lectures. [Note: Not available to OCW users]

Non-registered Students

Students from outside MIT are welcome to use the course materials and work their way through the lecture videos and homework assignments, though they do not have access to the MIT-only discussion forum on Piazza and may not submit homework for grading. Non-MIT students are encouraged to join the open discussion forum on Discord and find a cross-grading partner there.