Making things simple can sometimes feel like a game of Whac-A-Mole. Bash one complexity on the head and another pops up elsewhere.
Take the example of the online bank statement in Section 4: Remove. The original design had the user choose a month and a year, then asked the bank for the corresponding statement. This was straightforward to program but felt harder to use thanks, in part, to the high risk of errors.
In the revised design the user picked from a list of available statements. This felt simple to use and eliminated errors, but was more complex to program and put more load on the bank’s server as it checked which statements were available.
While he was part of the team developing the Macintosh, ...