Things I Believe
Strong opinions, loosely held.
Think in structures
- MECE
- Break problems down to fundamental truths. Don’t just copy “best practices” or “industry standards”. Think from the ground up
Speed compounds
- Think carefully, then move decisively
- Speed compounds. The reason to go fast is to learn faster, not to get more done
- Going fast without feedback is stupid
- Speed is not an excuse to skip the plan
- Shipped means the target audience is actively using it, not that you released it
You own the outcome, not the task
- If it doesn’t move the needle, don’t do it
- Choosing what not to do is as important as choosing what to do
Your best idea might be wrong
- Hard work beats talent. But hard work requires curiosity, and curiosity can’t be taught
- Have strong opinions, loosely held. Change your mind with evidence
- Mistakes aren’t failures, hiding them is
- More interested in being right than being seen as right
- Best work comes from following curiosity
First agree on what matters
- Don’t argue details when the real disagreement is about the framework underneath
- Opinions and values are choices, not facts. But once you have them, everything can be evaluated against them
Writing is thinking
- Write like you talk
- Clear writing is clear thinking
- Writing without an opinion is noise
- Ethos, pathos, logos. Structure everything
- Know your audience: most need a clear takeaway, curious audiences can also get a new lens
Observe, don’t ask
- If you want to know something, don’t ask for feedback. Observe behavior instead
- If people use it wrong, it is wrong, not the people
- Watch what people do, not what they say
- There are no stupid questions. If someone asks one, something failed to make it clear
- What someone says matters less than why they see it that way. Guess their intent
Products should have opinions
- Don’t aim for “this is good.” Aim for “I want it now, when do I get it?”
- There should be only one way to do it
- Easy to use, hard to abuse
- Progressive disclosure: power users use the same UI, they just go deeper. New users should never be confused by depth they don’t need yet
- Use good products yourself. Product taste comes from what you use, not what you study
Hire for growth, not credentials
- Two hiring answers: hell yes or no
- Growth potential > current skill
- Curiosity > CV
- The best credential is something you built that others actually use
- Most important hiring question: What have you built that wasn’t assigned to you?
The job of leadership
- The person closest to the problem should make the decision
- Protect employees from bullshit. Bullshit is everything that pulls people away from the problem they need to solve
- Never build tracks you haven’t run on yourself. Otherwise you don’t know if they help solve the problem, or just create more of them
- If you can’t evaluate the output, you can’t delegate it
- Build the framework together, then hand it off
- Once someone proves they understand the philosophy, and has experienced the problems themselves, they own it and can evolve it
Be authentic
- I absolutely despise non-authentic people
- Have an opinion, say it, defend it, accept when you’re wrong
- Non-authentic people try to please everyone. It wastes time and produces bad decisions
- The truth can be painful. Say it anyway
- If your gut says something is wrong, stop. You either don’t understand it, or you shouldn’t be doing it. It’s a self-fulfilling prophecy
LLMs are amplifiers, but don’t have agency
- LLMs amplify what you already have. Opinions, structure, frameworks make you more powerful with them
- Without those, you probably will not get much value from LLMs
- If you have clear opinions and don’t use LLMs, you’re leaving power on the table
- Code generation got easier. Good engineers always made the planning, testing, and thinking explicit. That is becoming the only part that matters
- The closer you interact with AI like you would with humans and human work processes, the better the results
- If you give a human “write me an article about coaches,” you get crap. Same with an LLM
- Generate, freeze, test
Boring is awesome
- Technology should be boring, because the problems are not
- Reliability beats clever
- Clean interfaces > clean architecture
- Choose your fights. Spend your innovation tokens wisely