• A lot of devs don’t put much work into planning the flow of their GUI from a user’s perspective and it really shows.

    IMHO a UI should offer everything a user can do in a given moment, readily available, nothing hidden behind more than a single menu. If something isn’t currently possible, it shouldn’t be available, and if the dev chooses to make the option visible but unavailable, it should be clearly and visibly marked as something that can be available (grayed out text for example).

    I think devs tend to overestimate both the skill of the user, and the usefulness of their UI.