I design computational systems for new ways of thinking, making, and playing.

My time at MIT is a collage of research, teaching. art-making, and collecting words.

I'm advised by Erik Demaine in CSAIL, with support from the MIT MAD Design Fellowship, the NSERC Postgraduate Scholarship, and the MIT Stata Family Presidential Fellowship.

Updates

Research Highlights

My research explores alternative representations of visual and material systems and how they shape what we can imagine and create. I build systems around these representations, inviting users to understand and play with the constraints and possibilities they introduce.

Refashion - Main view
Human-Computer InteractionComputational Design

Refashion: Reconfigurable Garments via Modular Design UIST 2025

Rebecca Lin, Michal Lukáč, Mackenzie Leake

How can we design garments for change and reuse? By reimagining garments as dynamic assemblies rather than static products, Refashion enables users to resize, restyle, and remix their garments on demand.

String to Structure project teaser
Algorithms & TheoryFabrication

Graph Threading ITCS 2024

(a-b) Erik D. Demaine, Yael Kirkpatrick, Rebecca Lin

How can we thread tubes with single string to achieve the desired structure when pulling the string taut? By recasting "threadings" as constrained walks on graphs, we give efficient algorithms for computing minimum-length threadings.

Constellation Patterns project teaser
Mathematical ArtComputational Design

Encoding-Decoding Constellations

Rebecca Lin, Craig S. Kaplan

How can we create constellations with unconventional star arrangements? By representing constellation patterns as mathematical graphs, we gain an alternative language for imagining and creating constellations.

Teaching

  • MIT: Preparation for Undergraduate Research (20 hours/week)
  • MIT: Design and Analysis of Algorithms (20 hours/week)
  • MIT: Design and Analysis of Algorithms (20 hours/week)
  • MIT: Design and Analysis of Algorithms (20 hours/week)
  • MIT: Fundamentals of Programming (20 hours/week)
  • UBC: Intermediate Algorithm Analysis and Design (12 hours/week)
  • UBC: Basic Algorithms and Data Structures (12 hours/week)

Words & Images