Principles
I want to hold myself accountable to these principles and values. Everything here is worded to express strong conviction, but I make mistakes. If you ever observe me compromise on anything written here, please tell me about it.
Truth
I've come to believe that everything I do is motivated by truth.
I want to discover truth and make it easier for others to discover truth. For me, the part of the job I love is discovering truths in the systems I use and have created. If I'm lucky, I discover a transcendent truth that teaches me something about the world.
Truth has been reduced to a cliche. Unfortunately, the people and companies that operate with a serious approach to truth are the extreme minority.
Integrity
Do the right thing, even when no one is looking.
I define integrity as acting in accordance to set of principles, values, and outcomes that I believe to be morally and ethically good. I am consistent in how I act, even when it's not to my benefit.
I am a truth-seeker and a truth-teller. I embody the spirit of truth, not the letter of its law.
Decency
Treat others as they want to be treated.
- Slow down to let the other car merge into my lane, even if they appear to be in the wrong.
- Apply the principle of charity when critiquing the work of others, craft empathetic code-review comments, dialog, and feedback.
- Don't conspire against others behind their back. I work out in the open, air concerns, and build friendships.
Values
Values are different from principles. I'm not allowed to compromise on any of the above; they're absolute. They cannot be horse traded for each other or for any values.
Values, however, are often weighed and balanced against each other, and can be compromised on. I think values are something that we can reasonably disagree on, and have different preferences/biases for. These are mine.
Scale
I leverage my work to have impact widely. I find and use levers that amplify my effort. Area over distance; volume over area; integrals over derivatives.
- When putting out fires, identify and fix the true root cause(s) so it can never reignite in a similar way.
- If a project is useful outside the team, consider building it as a common good.
- Mentor, grow, sponsor, and teach when you have something good to share.
- Build culture.
Long-term value
Don't sacrifice long-term impact for short-term results.
I am not beholden to the next quarterly result to the detriment of the long game. I plan to exist in 5, 10, 15 years. Longer time horizons are a critical competitive advantage, and they're just more interesting.
Speed is a necessary ingredient for exit velocity.
Speed is also a necessary ingredient for long-term impact. You can't go to the moon if you don't accelerate hard. You also can't go the moon by climbing successively taller trees.
This is in conflict with the previous value. This is OK. I resolve this by choosing speed unless it's something that matters to get right. Most things are reversible, which means they reward speed. I don't like trading long-term results for speed.
Robustness
Emphasize creating the right things, future-proofing, scaling, and automation.
- I don't want to be embarrassed to show how the sausage is made even if the customers think it tastes great.
- I think a reliable systems with fewer features compares well to an unreliable system with many features.
Efficiency
Spend only as much energy as necessary. Value performance, speed, and frugality of resource use.
- I use leverage to amplify work across space and time.
- Spending three months of effort instead of one to substantially reduce future work in the next 3 years is often worth spending.
- I don't build things we don't need; I don't waste time building prospectively needed things.
- I don't use more resources than we require, unless we're trading something for that waste.
Responsibility
I have a sense of duty to what I do. I care deeply, and when I don't care anymore, I work to fix that.
- I hold myself accountable, especially when my actions are inconsistent with my values and principles.
- If my values or principles produce a bad outcome, I try to debug my values and principles.
- I own the things I build.
- If I can avoid it, I don't do throwaway work. If I must, I make it trivially deletable.