Tlon's Operating Principles
To succeed at our mission is to convert people to the tools we make because they are better. We win by making things that are higher trust, more customizable, more efficient and longer lasting.
In short, success depends on the quality of the products we make.
Products are the output of processes. To create great tools, we have to develop great processes. These are the principles that should guide our work toward building great products:
Always seek to deepen your empathy for the people who use what we make
We build things to impact the lives of real people. We should avoid making these people into abstractions. Quite the opposite: we should aim to empathize with the people who use what we make, understand how they think about what we do, how they use our products and how they think about us as a company.
When we can see the world through the eyes of the people who use the tools that we make, we can understand how to better serve them.
Think from first principles
When we understand clearly what we’re doing and why we’re doing it, we can work with equal parts ease and precision. When trying to solve a problem, work through each step with discipline so that you can effortlessly sharpen the output of your effort.
Be extremely thorough in stepping through your thinking. If something doesn’t make sense in your chain of reasoning, find out why. Ask someone for clarification if you need it. Working from a position of uncertainty creates uncertain output. It’s important to have clarity in your understanding before you go and do something.
Strive to understand the whole system
It’s not possible for every contributor to understand everything about what we build. But it’s possible for everyone to have a clear picture of how the pieces fit together and why they exist.
High quality software is only possible when software is simple. This is the first assumption we made when deciding to build Urbit. Our software today is too complex.
Everyone who works at Tlon should strive to have a basic understanding of how the system fits together from VM to UI. The better our overall understanding of the system we're building, the easier it is to effectively harmonize and deliver that harmony to the user.
Work backwards to why
We don’t make things just to make things. We make things that will positively impact the lives of the people who use what we make. Everything we do should have a clear ladder back to the core why of our work.
Why are we fixing push notifications? Because we want people to reliably use our system to stay in touch. If people can do that, they’ll trust us enough to invite their friends and grow their community using our tools.
Why are we chasing down bugs in the interpreter? So that users can trust the platform they use to stay connected, commit themselves to it without question, and engage with it more fully.
Why do we pour our time and energy into this project? We build beautiful tools for staying connected so that individuals can freely and rapidly progress their communities however they see fit.
Making is a means of answering questions; ask precise questions
Not all questions can be answered by thinking. Once your thinking is clear, making is often the only road forward. Making is a means of experimentation that leads us to greater clarity.
This is true in writing, in visual design and in engineering. It’s essential to develop an understanding of when you have to stop thinking and start making.
We should aim to use making things as a way of learning. We make new design directions to see if we can sense which will work better. We make new features to learn if they can be effective for our users.
Work with ruthless intensity and focus
Great work is the result of tireless iteration. There is (and never has been) any other way to achieve high quality output. You have to make, test, re-make, test, and make again.
When you aim at making something really good it’s easy to be precious about the work. We have to avoid this. Something is good when it works. That is, it’s good when others understand it, it’s responsive, and it’s robust.
Software is never finished. We exist to continuously improve and, in doing so, find out how great it can possibly be. To push this frontier forward, we have to work with ruthless intensity and focus.
Never build more than you can in one step
We aim to build a platform that can last a long time. One of the worst mistakes you can make is tackling too much in one step. When you do this, you get overwhelmed and your work gets muddled, confusing, and low quality.
Working with ruthless intensity that’s also productive is all about scope. We have to be careful about the scope of what we take on. If we scope our work properly, we can achieve an exceptionally high quality of output.
Be unafraid to ask any question in pursuit of quality
We are all here to work together toward the same goal. In order to understand how we’re going to get there, we have to collaborate very closely and develop a sense of trust. To produce great results, though, we have to have a culture of good faith critique.
A productive critique should be relentlessly open: no question is out of bounds when pursuing something great. If you don’t understand something about what we’ve done or are doing, ask—and do your best to ask in the spirit of advancing the project. (Or, said another way, don’t be cruel.)
Individual pioneers are important, teams are essential
Developing great products requires unique creative leaps that are often made by individuals pushing the ceiling of our expectations. Giving individuals the freedom to search for these leaps is important.
But individuals can’t build a robust, reliable or complete system. To successfully support a whole system we need a team that can collaborate deeply, support one another, and keep continuity in our work.
Latency matters
The materiality of software is understood in large part through the response time between action and response. This is a basic truth that is easy to rationalize and avoid but is important to come to terms with. The system has to feel fast and the task it's doing has to be clear.
Go outside, rest -
Spending time outdoors develops our intuition for complex systems. Your mind needs the space to wander, process, and arrive at new conclusions. We are here to work with intensity, but without time in the natural world our thinking will become insular and self-reflexive. Go outside when you can, avoid your phone before bed, prioritize good sleep, and eat well.