Everyone learns about simple user interfaces and 'stupid' users. In an online platform with several hundred users, I worked under the assumption that the user interface has to be as clean and simple as possible and the workflow has to be self-explanatory. The problem is, you absolutely cannot imagine the degree of 'creativity' of a user that is not in the field of IT!
The platform has some complexity, but the design is well thought out and planned. However, it turned out that about 50% of all users using the platform for the first time had trouble understanding the workflow.
The solution was user schooling. In only 20 to 30 minutes of personal schooling (in some cases over phone was enough) is enough to explain the platform. You might think mousover informations, explanation text, big colorful information widgets etc. are enough, but they aren't. User schooling turned out to be the absolutely best solution - as also the customers felt like their problems are directly addressed - and not just instructed by a machine.
We recently did a cross-check. We asked users that got a schooling and worked with the system for at least 2 weeks how the platform can be improved. There was feedback, but no major improvments. So maybe you cannot always guarantee a great running platform just by making it good. Users not in the field of IT might need a little bit of personal schooling and talking to a human.
Do not underestimate the power of user schooling. It turned out to be worth the costs - users feel heard and from my experience they can actually work with the platform, despite the initial problems.