The four categories of features.

  1. Core: like an engine in a car. The product is meaningless without it.
  2. Necessary: like a car’s spare wheel. It’s rarely used but when needed, its function decides the success of the system.
  3. Added value: like a car’s cup-holder. It’s nice to have but the product is perfectly usable without it.
  4. Unique Selling Point: the main reason people should buy your product instead of your rivals. For example, your car is the best off-road vehicle.

Think where to put your time and energy. A typical prioritization can be

Security > Reliability > Usability (Accessibility & UX) > Maintainability > Simplicity (Developer experience/DX) > Brevity (code length) > Finance > Performance

Source: https://alexewerlof.medium.com/my-guiding-principles-after-20-years-of-programming-a087dc55596c