Recent writing

The fictitious moat

Developer tooling companies often believe their moat is technology or infrastructure. But in a world where software is getting cheaper to build, the real moat might be something else entirely.

The Collapse of Software Value Capture

How the move from closed source to services created new business models, why open source spoiled those models, and what happens when everything collapses to Markdown, SQLite, and CLI tools you run yourself.

The value illusion

A reflection on what 'providing value' really means in software, why traditional business models are built on artificial limits that AI is tearing apart, and how embracing constraints can lead to more sustainable approaches.

Rethinking Version Control for an Agentic World

Git and Git forges were designed for a world where humans write code in isolation. As agents become central to how we build software, I believe we need to rethink everything from branches to CI to how open source contributions work.

The normalization of unproductive environments

One of the biggest challenges we face at Tuist is that teams have normalized working without data. They stack decisions that erode productivity, then throw resources at the symptoms rather than understanding the cause.

Building the Shipping Container for Developer Toolchains

I’ve been thinking a lot about automation in software projects lately, particularly where the opportunities for a better developer experience lie. I believe many current limitations stem from how we answer the where , what , and how of auto…

Fluidity as DNA

The other day I was chatting with a developer who has been following Tuist for many years, and she was positively surprised by how much Tuist has changed over the years. She made me think that we don’t know what shape Tuist will have in yea…

A Tiny Nudge Can Move an Industry

One of the traits of my personality that I consider positive, yet sometimes frustrating, is that I spend a lot of time observing how things evolve. I tend to think in trajectories. In the context of Tuist, that means thinking about how we c…

What My Family's Cafe Taught Me About B2B Sales

We, developers, commonly believe that the only requisite for one of our creations to be sold is to make it awesome and valuable. While that might work in some cases where you press the right psychological triggers, the chances that those ar…

Thin Environment Layers for an Agentic Future

What is an environment from a developer's perspective?  A place where code is built and tested. We've evolved from having just local environments where we develop and test code, and production environments where we make our apps access…

Cache for any Xcode project

Today was an important day at Tuist. We released a major redesign of our marketing site and a caching solution that works with any Xcode projects, and we couldn't be more proud of our 4-person team pulling this off . We are building the com…

AI and the Craft of Building Products

There’s a camp of people who think that AI will lead to the Internet being filled with slop content and projects. While I think there’s some truth to it, I believe it would come from the same profile of people who would have published low-q…

Substance Over Spectacle: How We Share Tuist

When you build a company or a product, one of the things you have to decide is how to market yourself. This isn't just about getting people to know what your company does, it's also about the values you stand for. Tuist builds on an open so…

Why iOS Teams Are Flying Blind (And How to Fix It)

If you’ve developed apps with Xcode for a while, you might have noticed how little to no observability teams have over their setup. This is fine when you’re just getting started, but when the project reaches a certain scale, the lack of dat…

The Case for Dynamic CI Pipelines

Something I've been thinking about lately is how static CI pipelines are, and how this makes it challenging to work in large codebases and monorepos, where you can easily be constrained by the resources of a single machine and might want to…