This is issue #4 of Stephen’s life updates for my friends. This will be a longer one as it’s been 10 months since my last monthly update. My commitment to the bit has not been good!
Realized dimensions
An idea I’ve been pondering is the accumulation of “realized dimensions” — parts of the world you once couldn’t perceive, or perceived only very coarsely, that become more visible with time and practice.
A recent project Lenses explores some of these realized dimensions that have become central to my belief system and how I understand the world:
These realized dimensions include:
- Agency: which of our constraints are real, and which are imagined?
- Communication: where do ideas get lost on their way from one mind to another?
- Systems: why do the same incentives keep producing the same outcomes?
You’ll note that the lenses above aren’t experiential dimensions, but conceptual ones, used to understand the world.
For many years, I’d de-emphasized some experiential dimensions, like:
- food: what makes caviar and fine dining appealing?
- interior design: how do two different shades of white evoke very different things?
- fashion: what textures, shapes, silhouettes, colors make an outfit come alive?
I viewed spending lots of time in my body or indulging in experiences & expression as “suboptimal.” It felt more important to focus on the dimensions that would produce the outcomes I wanted. In college, that was mostly: school, work, programming, personal finance, friends, and health. Everything else was a distraction.
I’d cast away the notion of fine dining, because it seemed pretentious and indulgent and hardly worth the money! (I still don’t love fine dining, but not quite for the same reasons.)
Part of this was maybe due to a sort of Asian-immigrant frugality mindset bestowed upon me by my parents, where I’d feel guilty about eating sushi or spending money on nice things when spending less would get the same job done. Food became about calories, nutrition per dollar. Furniture and clothes about function. Closing dimensions was pragmatic.
But when you’re older, and you have more time and capital, and the world isn’t as overstimulating anymore, you can finally allocate your attention to some new dimensions.
My friend Neall calls these “little critters.” Critters can be physical organisms (what’s up with those palm trees in Dolores Park?) or abstract ideas (how do memes get born and propagate?).
Over time, you see the world in many more dimensions, and no longer as “flatland”.
This term comes from Edwin Abbott, and Edward Tufte repurposes it in Envisioning Information:
“The world is complex, dynamic, multidimensional… How are we to represent the rich visual world of experience and measurement on mere flatland? This book celebrates escapes from flatland.”
And what a joy it is to escape flatland and find a few more of these little dimensions (lenses, critters, rabbit holes, whatever you’d like to call them) every day.
A new chapter at Notion
Work has been a particularly busy chapter. I also just hit my 4-year anniversary. :-)
A new role
I’ve settled into my role as a Tech Lead Manager, now over a year in. People say that being a TLM is a scam, because it’s like working two jobs — both being a pure engineer and an engineering manager at the same time. They are correct! It is a scam and it is like working two jobs. But I don’t regret it.
One of the experiences I most enjoy in life is uncovering a new novelty frontier, whether through a new roguelike game, a new city, or a new role. There are many new experiences to be had and many hills to climb, and you make rapid progress as you first explore the space. The first few times you do anything, you will probably suck at it, but over time you start to get it — and then you’ve climbed up a few hills. And a year later, it still feels like there are many more years of managerial lessons to learn.
Management has its own realized dimensions, from “how do you recruit candidates well?” and “how do you juggle business needs, team needs, technical needs, and user needs?” to more subtle dimensions like “how does information asymmetry lead to gaps in leadership and IC execution” or “how do managerial styles and incentive differences from different leaders change the projects that evolve under them?”.
Many times I’ve realized, “oh, this is what my ex-managers and mentors were trying to get me to understand about the many Chesterton’s fences that I hopped as an IC.”
A new kind of engineering
I’ve been helping with AI education at Notion for the past year. Part of this means trying many different tools, models, and strategies and sharing them out. It also means that being terminally online on X — unfortunately the “hub” of AI coding discussion — has become part of my job.
In May, I hosted an AI education camp for fifty engineers in Pescadero, CA’s Costanoa Lodge.
It seems as though every software company is grappling with the same balance of velocity vs. quality, with questions like:
- If we delegate larger tasks to agents or loosen code review standards, do we ship and learn fast enough to make up for the quality deficits?
- How much delegation of ideas to AI is acceptable — in PRs, RFCs, code reviews? How much does human input matter if the ideas or code are correct?
And every answer seems to be: “It depends” with many asterisks. It’s hard to know what the future carries, and everyone has a different opinion.
I like this one:
If you’re curious what my work on AI coding looks like, see: AI Coding Developer Belts at Notion (Jan 2026) and [RFC] AI Tools & Education (August 2026).
My latest AI coding tools & models recommendations (9/1/2026)
Tools:
- Orca is my agent orchestration tool. It’s nice to be able to swap out the harness (Claude Code, Codex, Cursor, Omp) and bring your existing subscription plans.
- Zed: I've recently churned off Cursor’s IDE and now use Zed whenever I need to look up code. It's faster with less memory footprint and bloat. Only downside is that Search all files (cmd+shift+F) is less ergonomic than VSCode. I'm also still using GitHub Desktop to read local diffs when needed.
Models:
- ⭐ GPT 5.6 Sol or Opus 5 (medium) primary driver depending on the task. Sol for more input/output or backend shaped problems and Opus 5 for more "taste" shaped problems, like new UI or deciding abstractions.
- I do find the latest frontier model outputs to be very annoying to read, and use skills like STE and unslop to alleviate this.
- Fable is just too expensive as the primary driver, but I do use Fable + Opus subagents from time to time.
- 🌶️ My looser opinions are that Kimi K3 is overrated, Luna Max with the 80% discount is a nice subagent but not good enough for serious coding, Terra doesn't seem worth micromanaging to, and Sonnet 5 is generally a bad performance/price ratio. Grok 4.6 is a good model overall for speed & quality and is good at doing what it’s told, but has bad taste so I don’t trust it for anything open-ended. But this is all very dependent on your budget.
My general recommendation for people who don't want to think about models and tools at all is:
- Just use Codex UI + GPT 5.6 Sol. Unless you're a designer or design engineer, then use Claude Code UI + Opus 5 instead, because of the better taste.
- Default to Medium effort for this latest generation of models (Opus 5, Fable 5, 5.6 Sol). Tweak to higher for problems that you might spend many hours on doing by hand or complex plans and debugging.
I’ve also been having some fun with Grok Bot, which can also orchestrate Cursor agents or any coding agent via CLI on its computer.
A few new primitives
My team is called Primitive Foundations. We help build and advise on core building blocks of Notion. In March, we shipped Dashboards & number charts:
And I’m currently working on two new features: custom blocks and [secret project].
Making many things
Since the last issue, I’ve been building many coding side projects, thanks in large part to AI coding agents getting smarter and faster.
For years, I had too many ideas locked away in a database, never to see the light of day because I didn’t have the time. Now the bottleneck is trying not to break the bank buying tokens and usage limits on AI plans. 🥺
This current age of AI coding for programmers feels as if you’re a firebender and every day is Sozin’s Comet.

I’m having so much fun!
A gallery of a few projects I’ve worked on:
DOM-ino: experiment zone for pretext.js and DOM physics
Stagebench: AI benchmark for recreating the Nord Stage 4
wustep.me: website redesign, ft. a software playground
Splashpanic: Crazy Arcade / Bomberman game clone
It’s a joy to be able to take an idea (“It might be fun to make a lil Sims world”) and turn it into reality in a few hours.
Matchmaking
One of my larger projects is a matchmaking app. I believe one of the most impactful things you can do — for relatively little effort — is connect your friends platonically or romantically.
I think two reasons why people don’t do this more are:
- mental overhead: if you have lots of friends, it’s hard to keep track of who they are and who’s looking for what, and their increasingly specific romantic preferences
- network size: even the most extroverted people may still not have a large enough pool of friends to make many romantic matches, as it may take 40+ people to find a solid romantic match
So I set out to build matchmake.love for the hobbyist matchmaker. By pooling your friends with your friends’ friends, it becomes easier to find matches. By making it really easy to manage your list of friends, you’re more likely to do it.
My motivations are partly anthropological, and I’m curious about questions like:
- What makes a good matchmaker? What attributes do the successful ones believe matter most? (Mutuals? Shared hobbies? Enneagram/MBTI?)
- How do people's revealed preferences differ from their stated ones, and how much do their hyper-specific ones matter in the long run?
It’s also been fun and educational to have a full stack playground that has room to design many surfaces and build lots of infrastructure (including, of course, an AI agent that you can text).
If you’re interested in matchmaking your friends, try it out: https://matchmake.love (access code:
WUSTEP). It’s quite early and I’d love to hear your feedback.Writing
- Lenses: a collection of my favorite mental models
- Headspace part 2: an essay on a mental model that I love
- How to talk to coding agents: a guide for engineers
- Building Notion dashboards: an exploration into the product & design thinking of dashboards
- Spot it!: breaking down the math of the game and my version
Other happenings

Thanks for reading!
If you have any thoughts, want to catch up, or have stumbled onto a new dimension that you’d like to share — you know where to find me. 🙂
Best,
Stephen

