SAVE THE DATE: November 24–27, SAG 2025 in Berlin

Conference program

iSAQB Software Architecture Gathering 2024

Register now

  • Session (45min)
  • Beginner
  • 30 Nov 2023
  • 15:45-16:30
  • Room 2

Seven Righteous Fights

by Heidi Waterhouse

There are seven fights that I have over and over again, whenever I start at a company. I’m here to convince you that it’s valuable for everyone to have these things in mind from the inception of a project.
Having these fights early prevents you from doing the software equivalent of poking chocolate chips into an already-baked cookie
Details
Usually we think of compound interest as what adds magically to our retirement or makes our student loans last forever. But there is also a compound interest of technical debt, where a project is made harder and more expensive because of early “cost-saving” choices.
I think it’s empowering for developers and other people involved in the inception of a project to have tools for making the project better long-term.
The seven things I think should be considered very early in development are:
1. Localization. Are you ever planning on selling this to someone in another country?
2. Security. Don’t be the organization that has to pay someone for disaster PR. Building in security early saves you a bunch of time and user churn later.
3. Extensibility. What makes you so sure this API will always be internal?
4. Documentation. People do not buy software solely based on Powerpoints. You need public docs. The docs have to be more useful than Stack Overflow.
5. Affordance. UI is not a word. The microtext matters.
6. Acceptance. Have you shown this to any actual humans who are like the users?
7. Accessibility. We all use computers different ways. Does your software allow that?

I expect this talk will be relevant to both senior people working on leading project teams, and empowering for juniors who don’t have a structure for critiquing usability problems. I want people to leave with an understanding of how small changes in the initial trajectory of a project can lead to greatly improved outcomes.