How to see the future

An MIT PhD reveals his process for researching the future of programming

Geoffrey uses Muse to take notes and think

Welcome back to Action Items a series in which we condense and extend interviews with interesting people into actionable bullet points — only for paid subscribers. 

 👉 Today’s Action Item is 997 words or 4 minutes and 59 seconds of actionable reading.

Geoffrey Litt spends all day inventing the future of software.

He's a software engineer and PhD candidate at MIT, and he believes everyone should be able to customize and extend the software they use every day—even if they can't program.

The problem with software today, he thinks, is that it's the same for everyone—like a hotel room we rent for the night. Instead, he wants to move us toward a world where software is like a home we own: infinitely extensible, customizable, and personal—even if you can't program.

It's an ambitious vision, at once utopian and practical. It's just on the edge of achievable without being crazy—which means, in my opinion, Geoffrey has a good chance of succeeding. But it's going to take a long time.

And that's what makes him so interesting. He operates on a different timescale from the typical startup drumbeat of finding a problem to solve, and then scaling as quickly as possible. Instead, he knows he's after something that will take a decade of deep thought and quiet iteration to realize. It comes across in the way he speaks—ask him a question and he doesn’t rattle off the first thing that comes to mind, or something that sounds like his next TEDx presentation. He’ll pause, take a moment, and really consider his answer. 

My question is this: how does someone like Geoffrey see into the future and then work to build it? 

In the rest of this interview we go through Geoffrey's research process. We talk about how he takes notes on what he reads, how he writes his papers, and the projects that have come out of the research he's done thus far. 

Let's dive in! 

🧠 He keeps his calendar open for deep work

Geoffrey structures his schedule to support going deep into big research projects. Here’s his strategy:

  • Keep two to three days a week open for deep work on projects—schedule nothing else on the calendar
  • Stack meetings and conversations into two to three days a week
  • Use a paper notebook to sketch out the day, specifically an emergent planner
  • Identify three major goals for the day
  • Schedule the day by estimating how long each goal will take to accomplish and blocking out the time to do so using 15-minute increments

Geoffrey acknowledged that academia makes it much easier to control his schedule and stick to deep work days than it was when he was at a startup. 

🐇 🕳  Reading and research

To connect the dots between concepts and make big leaps, Geoffrey sets aside time to add to what he calls “mind soup”—all the ideas and conversations and bits of knowledge he’s mulling over and synthesizing. “I try to keep my mind open for sparks and then follow the ones that seem interesting,” he said. This informs how he reads and researches. 

  • As part of a big project he does a literature review to see what other people have written about the area he’s researching.
  • He opens interesting citations from a paper and downloads them all into Zotero, an academic reference management tool.
  • He makes sure to build time for “rabbit holing,” spending a day or two just scanning sources and following citation trails on subjects he’s deeply interested in.
  • Deep reading comes next.
  • He usually reads on an iPad Pro, which he calls “a beautiful reading device;” the format allows a full page of an academic paper to fit comfortably on screen 
  • A single paper might take a whole day to process, two a day is the max
  • He makes notes in the margins and highlights important elements
  • For some papers he will create a markdown file which he stores in Obsidian, crosslinked to the paper’s file in Zotero

📝 Pro-tip: “A major part of my research process is sketching in the Muse iPad app,” Geoffrey wrote to me in an email after we talked. “It feels like a calm environment, like a paper notebook, but can incorporate digital resources like PDFs, websites and images.”  He uses the “guided access” feature to prevent himself from switching apps.  

📐 The unit of work

Once he has done the reading, spent time on Muse, and added enough ingredients to set his mind soup simmering, Geoffrey starts thinking about the outline of the finished product. As a PhD candidate, the research paper is his default unit of work, and these take somewhere between six months and a year to write 

“I tend to suffer from perfectionism in writing,” he told me. “I spend a whole day working on five perfect sentences, which is a terrible result. My entire writing process is designed to counteract that.” 

  • He starts with an outline dividing it up into the sections he knows he’ll need to include in the final paper—this usually includes an introduction, a history of the subject, a system design section, and related work. 
  • Every element of the paper gets a line in the outline, which grows increasingly detailed over time.
  • As the outline fills out, he starts to think more about the language, and converts shorthand into more careful prose.
  • Another exercise he does to hone his thinking and structure the paper starts with a brief overview that expands over time.
  • He starts with the very short version—a single paragraph in prose.
  • The short version, a couple of paragraphs, comes next.
  • Then a one-page version,“This forces a strategy where I can never get too bogged down in details early,” he said. “It forces the global structure to come 

🎨 What he’s making

“What if everyone could build a browser extension?” Geoffrey asked me during our conversation. “We all use the web every day, and most people can think of at least one thing, they would like to be different on a website.”  Most of his work plays on this theme of making the web more customizable to all users, so that we get more value from it. Here are a few examples of his projects in this vein:

🃏 Wildcard: One of his main avenues of research at MIT is Wildcard, a browser extension that allows anyone to edit a website using a spreadsheet.

🐦 Twemex: Like most people who have been on Twitter, Geoffrey finds it very valuable and also infuriating. Twemex is a side project, a browser extension designed to parse Twitter in a variety of ways to make it more interesting, more relevant, to create productive rabbit holes rather than privileging the eternal scroll. 

🗝  Key takeaway

Something that struck me during this interview was Geoffrey’s sense of time—he’s not a harried product manager trying to bring something to market as quickly as possible. His questions about what computer science can accomplish, the kind of future world that people in his field are creating right now, are expansive and open ended. These questions though, require time and space to properly develop. Here’s what he had to say about that dynamic in a product-driven world:

“My goal is to do foundational research that I couldn't do at a startup, that's longer term, but that still ends up connecting with the world and making a real impact. I think if you look at the way people use computers today, it was not possible for that to happen overnight in the 1980s. When they started Xerox PARC, the lab that produced a lot of what we use today as personal computers, Jack Goldman, their Chief Scientist said, You know, don't expect anything of business value in five years, but you’ll have something valuable in 10. I think that that mindset is very antithetical to the Lean Startup mindset, and simultaneously produced so much of the underpinnings of what we use today as technology.”

👉 Question for members

What did you think of Geoffrey’s research process? What did you take away? Hit reply, and let’s chat!

Like this?
Become a subscriber.

Subscribe →

Or, learn more.

Read this next:


Following the ‘White-hot Fire Inside of You’

For this artist, a sense of purpose is infinitely more powerful than any amount of inspiration

2 Oct 16, 2023 by Kieran O‘Hare


How I Bought a Business for $0

Negotiate on either price or terms—not both

Sep 1, 2023 by Justin Mares


How to Make Yourself Into a Learning Machine

Shopify’s director of production engineering explains how reading broadly helps him get to the bottom of things

5 Oct 25, 2023 by Dan Shipper

Chain of Thought

🎧 ChatGPT for Radical Self-betterment

Clinical psychologist Dr. Gena Gorlin’s AI-powered annual review and goal-setting session

Jan 31, 2024 by Dan Shipper

Napkin Math

Crypto’s Prophet Speaks

A16z’s Chris Dixon hasn’t abandoned the faith with his new book, 'Read Write Own'

13 Feb 1, 2024 by Evan Armstrong

Thanks for rating this post—join the conversation by commenting below.


You need to login before you can comment.
Don't have an account? Sign up!
Russ Bankson 10 months ago

Very interesting article given the current apprehension over AI. Using AI to be able personalize software as a user is the holy grail. It would provide an antidote to unnecessary complexity. Many powerful programs and websites try to offer a laundry of features that simply makes it hard to learn and navigate. If you had really sophisticated AI tutors that could reveal a capability only when requested or suggest one based on user actions it would be transformative.
QUESTION As a current non programmer and given the increasing capability of AI to write code would it worthwhile to learn to program? eg. Python. Is this a reasonable short term goal

Every smart person you know is reading this newsletter

Get one actionable essay a day on AI, tech, and personal development


Already a subscriber? Login