Basically what you want to do is to think about what problems you want users to be able to solve with your tool, and then think about the step-by-step process necessary to use your tool to solve those problems, and then try to make the UI make those steps as prominent as possible and reduce any other stuff on the screen as much as possible. This gets tricky when users will want to be able to use many of your different sub-tools in many different orders, which is when you start to see the UI get filled with buttons (like Photoshop). I think one useful thing is to make it easy for users to hide those portions of the UI that they aren't using frequently so that it's quicker for them to find their way around. Another trick is to start by hiding everything except the most-crucial buttons, and then when the user is more-advanced, allow them to configure their UI to specify which buttons should be shown at all times and which should be hidden behind a menu
A good idea would be to create a blog post in which you discuss a hypothetical simplest-possible workflow (just a linear 5-step process or something like that), and then gradually increase its complexity (eg needing to go in the opposite direction, or having two alternative steps), and show how the UI should handle those different situations. And try to come up with general 'rules' or guidelines from those thought experiments (like, "if A is dependent on the user first completing B, and there is no reason that the user would care whether they would do A or B first, then show the user B first").
General rules of UX
Don't waste the user's time.
You can save the user time by using interfaces that the user is already familiar with.
“One of the things we did learn very quickly is that typically when someone subscribes to Spotify – so pays for an account, rather than listening for free – they do so with credit cards. But we launched in a continent where credit card penetration is low,” she adds.
They were faced with a challenge: There were hundreds of thousands of people wanting to subscribe, Kaur says, but unable to pay for it. “So we introduced other payment methods,” she said. “We needed to bridge the gap between what we offer and accessibility. We introduced retail cards so people could subscribe and, in the Philippines, we went back to old-school bank transfers.”
Examples of good UX
TunnelBear has a great UI. The big map with the animation and color. It's a very simple product to use, and it looks appealing.
Examples of bad UX
The program crashed when I clicked a particular button and I lost ~30 minutes of work.
The program got stuck on the 'drag and drop' option.