Lead Dev 2016 London: The 7 rightous fights

You cannot fix it later, because you have users (resistance)


  • don’t build in technical debt you could have avoid
  • be productively lazy

The 7 rightous fights

  1. Localization: make users comfy
    • don’t hard code UI elements
    • no words in images
    • bake in extended character support
  2. Security: make users safer
    • not cheap, not easy, but beats the alernative
    • leave room for encryption early on
    • destroy data (how does your data dies ?)
    • use existing auth services
    • stop saying “it’s secure” unless you are
  3. Extensibility: make code usable
    • is your API going for forever ?
    • make code reusable
  4. Documentation: disater proof
    • sublte self promotion
    • good for dev onboarding (new commers)
    • production scripts, build sequence (avoid truck factor). Secretive build engineers are bad ones
    • release notes are the most important documentation for everyone. Spend time on it
  5. Affordance: nudge good behaviour
    • example: the USB stick is symetrical and everyone fails at inserting them
    • use your software with regular user rights, not admin all the time
  6. Acceptance: test with users
    • find people who are your users. explain them nothing (gemba)
    • if you can’t hire an expert, become a student
    • software is a tool, not an end
  7. Accessibility: include people
    • we are all going to need it someday
    • look at your software on a small screen
    • 8% of men are colorblind
    • screen reader links (with a descriptive title)
    • try to do tab browsing, without the mouse


  • do what you can: bown bag lunch, pair, write unit tests
  • money is the root of all business
  • decision: saving money is the lever