Why is 3D modeling so frustrating?

tl;dr: 3D modeling software is frustrating because it is very unlike any other class of software than most people commonly use. Also, it doesn’t usually match any prior experience that people have from the real world.

OK- maybe a longer description would help. Having worked for years on a product (SketchUp) which intended to make 3D modeling easier (even… “fun!”), I can offer a few thoughts. I may be off base with this, but then again… we’ve had pretty good success teaching folks who have never done 3D modeling how to do it quickly and painlessly. SketchUp has a ton of users worldwide. Makes me think we did something right.

The key issue for me is ‘intuitiveness.’ There is nothing inherently ‘intuitive’ about any computer software, though software designers like me often talk freely about how intuitive our stuff is. Most people find software tools frustrating to use (‘un-intuitive’) when they fail to match expectations set by some prior experience.

Word processors are ‘intuitive’ to use because they are like typewriters (remember typewriters?). Photo editing tools are ‘intuitive’ because they are like cameras and darkrooms. Painting programs are ‘intuitive’ because they model paintbrushes and paint palettes. Spreadsheets are ‘intuitive’ because they model ledgers and tables. And so on.

3D Sculpting tools like ZBrush rely on clay modeling as scaffolding for ‘intuitiveness’. In SketchUp’s case, we relied on ‘drawing’ for our scaffolding.

Unfortunately, there are fewer people in the world with real-world experience either clay modeling or drawing than there are people who remember typewriters. Everyone has fiddled with a lump of clay at some point, but few people are capable of sculpting a car with it. SketchUp was a quick hit with Architects because they are all taught how to draw — and (especially) how to ‘think with drawing.’ We matched a prior experience for them, so the transition into 3D modeling was easier.

Once a user’s preconceptions have been met, it is possible to lead them into very new classes of activity- they’ve grokked your paradigm and are ready to expand from that intuitive base. But it is tough to bootstrap a user into an entirely new way of thinking (like 3D modeling) without some scaffolding from the real world.

Of course, matching prior experience isn’t the only way to make a tool usable. Automation has a lot to do with good software design as well. Every decision a user doesn’t need to make allows your tools to be more ‘simple’. And many users have scaffolding from common WIMP UI paradigms and whatnot which also serve to set baseline usability expectations.

This is a complex topic, but a fascinating one when you get under the surface of things.