On a related note, I hate most UIs, and would really like to go back to the original idea of a User Agents. I'm far from an expert on Human-Machine interfaces, so take this with salt, but my vision is of software exposing only a very high-level user interface, being essentially just a collection of recommended widgets and flows on top of their API, and then me as a user having a User Agent AI create a custom UI for me on top of it based on my own preferences.