Things I Believe

Build things people need

  • Start with the problem
  • Keep the first version simple
  • Talk to users
  • Don't build just because you can
  • Good products solve real problems
  • Make it useful before making it beautiful

Ship, then improve

  • Don't wait for perfect
  • Small steps are easier to fix
  • Real users teach you more
  • Feedback is part of the process
  • Ship early, learn fast
  • Keep making it better

Code is a tool

  • Good code should make life easier
  • Keep things simple
  • Don't over-engineer
  • Read the code you write
  • Fix problems before they grow
  • Take ownership of what you ship

Design matters

  • Details matter
  • Good design feels simple
  • Less is often more
  • Every screen should have a reason
  • Don't make users think too much
  • Make technology feel natural

Take ownership

  • Don't wait to be told what to do
  • If you see a problem, solve it
  • Take responsibility for the result
  • Do the hard part yourself
  • Help the team move forward
  • Titles don't make you a leader

Keep learning

  • Technology changes fast
  • Stay curious
  • Learn by building
  • Read things outside your field
  • Ask questions
  • Change your mind when you're wrong

Keep it simple

  • Complexity is easy to add
  • Removing things is harder
  • Simple products are usually harder to build
  • Fewer good features beat many average ones
  • Make the complicated parts invisible

Build from scratch

  • Start before you're ready
  • You don't need permission to build
  • Small ideas can become big products
  • Learn by doing
  • Make something you would use yourself