I'm building a development environment for professionals using a complicated DSL to interface with a powerful AI. No beginners in emergencies should ever see this thing - my users got graduate degrees to get to this point, and they're going to have to learn to use it to do their job. I'm going to make that as painless as possible, but nothing can have all the required features and make them all obvious in ten seconds.
Your UI doesn't have to be simple, but the user needs to know where to start. That's the idea behind the original Windows 95 "Start" menu. Even though there is plenty of things on screen, the starting point is marked in the most obvious way possible.
Now the idea seems to be: hide everything but the starting point, which is certainly a good way to show where to start, but it doesn't help the user getting beyond that, if it is possible at all.
Interestingly, that learning curve is well studied in video games, and often well implemented. General UI seems to be focused on aesthetics more than anything else.
Edit: typos.
However it is important to remember that if your product is successful the vast majority of your users will not be beginners and so you need to make sure their experience is good.
For example, something like Twitter fails massively here. It's easy to use as a novice, but there's no progression (I know that sounds like a concept from games, but it seems applicable). I want to be able to see who, of all the users I've seen, listed, followed, is active these days. I want to be able to draw on other people's list of follows to extract suggestions of who might be good to follow & is actively tweeting (not dumb automatic suggestions, please).
It would be so amazing to be able to "bin" Twitter users (across all of my lists, follows etc.) by how active they are. So the excessively chatty ones can be browsed when I have time, and the ones that post almost never—well, when they do, I see it.
> A user interface should be so simple that a beginner in an emergency can understand it within ten seconds.
I think this has principle been taken way too far, and it certainly shouldn't be regarded as a commandment. I, the user, am not always going to be a beginner in an emergency, so why restrict me like that forever? Good design shouldn't be unnecessarily complex, but sometimes you need a complex good design to have a powerful good design.
This podcast has a good discussion of this: https://99percentinvisible.org/episode/of-mice-and-men/