The most basic error is WYSIWYG, it can work to a certain extent, like CAD systems, where you can "free draw" something but any line have defined parameters, we have snap concept to state a line is connected to another, defined properties like length and so on so in the end we have "a model", a free draw witch is also a set of data constrained/in relation with a set of functions but in general it's a nightmare. The second basic error is try to compensate the lack of integration, a system designed for commercial purpose in witch any software is a standalone closed product, by adding features that in theory can only grow to create "the complete thing" witch is an impossible goal and makes in practice just bloatware. The third basic error is consider users a bunch of imbeciles who can only learn a thing "click around on some pictogram and enter text like a chimp plunging fingers slow and hard". If you craft something simple and explain the principle behind people will learn and act. Oh, of course you need a bit of INITIAL training but after it they are ready, like teaching how to fish vs giving a fish to a hungry person. Oh, of course commercially hungry people are nice, they are tied to the vendor and they keep spending, being locked where they are, but locked people are not productive, like slaves do not work well compared to free employees.
That's the spreadsheet mistakes and modern IT mistake in general: the will to keep users ignorant while trying to made them productive anyway instead of teaching them, giving them powerful tools. It's not transforming anyone in an engineer, it's just the same concept of schooling for all, ensuring anyone have a minimum culture needed to be a Citizen in a society.