It's not bugs that is the barrier here. Maybe functionality is the wrong word as I'm talking about something higher level than individual features, and maybe 'user stories' better represents what I'm getting at...
What I mean is that 'old' software has focussed on giving users lots of tools for users to complete their tasks, and when we talk about UI's we are talking about how to arrange all those tools in a way that is easy for a user to navigate. Users usually have to learn about all the tools that are there, so they know which ones to use (and over time the ones that learn about the existence of all the tools become 'power users').
But 'new' software might be more about completing users tasks for them, and these higher level tasks are the ones that are hard to define because there are so many permutations of what a user might want to do. As the software is helping users more, end-users might not ever need to know about the existence of all of the tools as they are abstracted away.
> But 'new' software might be more about completing users tasks for them, and these higher level tasks are the ones that are hard to define because there are so many permutations of what a user might want to do
20 years ago we called the functionality: "record macro". Very few programs implement a subset of it ( record, save, replay) - Hello Vector CANoe/Denoe, but not the whole ( loading, editing macros), again Hello Vector CANoe/Denoe.
Microsoft was very close to have a "Set as default" button in Settings dialogues in Office but, then, "they improved".
The concept of recording a macro (telling a computer the steps you want it to do, and then it repeating it) is very different to telling the computer the outcome you want and it working out the steps.
Going back to the 'help me calculate the financial implications of a house purchase' example - making a macro might make your work repeatable, but doesn't avoid users needing to learn excel or needing to put in the effort to build the spreadsheet.
What I mean is that 'old' software has focussed on giving users lots of tools for users to complete their tasks, and when we talk about UI's we are talking about how to arrange all those tools in a way that is easy for a user to navigate. Users usually have to learn about all the tools that are there, so they know which ones to use (and over time the ones that learn about the existence of all the tools become 'power users').
But 'new' software might be more about completing users tasks for them, and these higher level tasks are the ones that are hard to define because there are so many permutations of what a user might want to do. As the software is helping users more, end-users might not ever need to know about the existence of all of the tools as they are abstracted away.