Photoshop,
Sketch,
Figma. I changed tools every time it was needed, giving up the comfort of knowing one inside out, because the job kept getting more precise. Those were evolutions.
2025 is a break. I already liked going to the engineers rather than handing them screens to translate: a SaaS sells code. Today we get to sit much closer to them. You read the repository before you draw, and you stop proposing anything whose cost you do not know. An agent does not do the work for you, you have to steer it: between the two of you it is ping-pong.
I have not turned my back on Figma. It still answers two things: looking for an art direction, and seeing every screen in sequence, which is still the fastest way to understand a flow. But once a product has found its voice, the source of truth is the code, and Figma becomes a second source that users never see. So most of my week now happens in Claude Code.
The stack
I keep my notes in
Tolaria, my work in
Linear, and I reach everything through
Raycast.
I run agents in parallel with
Superset, watch them work through
Vibe Island, write with
Kerlig, and record what came out with
Supercut.
I still open
Figma for a direction, and
Mobbin to see how a problem has already been solved. Then
GitHub and
Vercel, and it is live.
The desk
One workspace, and a naming rule that holds everywhere: the local folder, the GitHub repository and the Vercel project share one name. Anything I can infer is something I never have to explain.
Context is read in cascade. Every level has its own versioned markdown file, from the workspace down to the project, and the agent reads them in that order when a session opens. It knows where it is before it writes a line. One file per project, and a symlink for the tools that expect a different name: two copies would drift apart.
Before it writes anything, I build the visual direction. Chosen references, written patterns. Without that frame an agent fills the gaps on its own, and it fills them badly.
What I know lives apart, in a vault of versioned markdown files.
What stays mine
Deciding what to build, and judging whether it is good. The agent proposes, executes and proves. It does not decide, and it never approves its own work.
This site never had a mockup.
Teams I watch
Not tools I use, products I admire the making of. In each of these you can feel someone said no to something.
LinearBeyond the product, what I follow is how they think about work and about design.
LumaThe same level of quality on desktop and on mobile, which almost nobody manages twice.
FlightyA small team, and an experience that was already exceptional at the first release.
AttioProved a CRM can stay simple and still show exceptional craft. Nothing feels left to chance.
The Browser CompanyTook on the browser, a settled category with entrenched competition, rethought it, and got people to switch. The hardest kind of problem to pick, and they landed it.
Gentler StreakFinesse in the execution, in a category that rarely bothers with it.
ThreadsI do not use it. It is still the best craft in social.
GO ClubVery few actions, and every one of them right.- VisitorsSimple web analytics, made with a level of craft the category rarely sees.
What they have in common is that craft is not a finishing step there, it is part of the business decision. That is what keeps a product strong years after the launch.