And for my next trick… let’s beat Blender over the head

Blogs are kind of like Usenet where you get to avoid the flamewar. I tried posting on Blender’s forums about its atrocious UI and quickly gave up since the responses were idiotic, hostile, or despairingly sympathetic. You get the picture.

Having come up with my 11 simple rules of usability, I can now beat Blender over the head in my own private (public … but who’s reading?) venue.

1. Consistency.

Blender isn’t consistent with (a) itself, (b) any other major 3d app, (c) graphics apps in general, or (d) GUI apps in general. Where do I start? Guess what the keyboard shortcut for Undo is? Don’t bother, it’s “U”. Now just imagine trying to convince the genius who came up with that one that it’s a bad idea. (Obviously everyone else needs to change…)

2. Progressive Disclosure

Let’s assume you want to create a new material for your model. Typically you might like to set the material to have a color and a shininess initially, and then maybe add a bitmap instead of a flat color.

Here is the icon toolbar thingy in material mode in blender:

Aside: A slightly edifying story.

A “usability expert” once told me about his “rule of three”. It takes three design iterations until you can “get something right”. He’d apparently confirmed this “rule” by giving students Rorschach ink blots, asking them what they thought they looked like, and telling them to modify the ink blots just enough to make their opinion obvious to anyone else looking at the inkblot, then ask ten people what they thought it was, and if they got disagreement, make changes, etc. until they got ten positives. He said most of the time, three iterations were needed.

I said I could do it first time every time. How? I’d make my changes and add a freaking caption.

Now, having identified the correct pair of icons to click on in order to add a material, you are faced with this:

No shame if you missed this while clicking randomly on icons looking for something that might seem related to adding materials. But let’s assume you figured out that this was your holy grail. Note what you’re shown and not shown.

Heaving found your holy grail and clicked Add New, you’d finally get somewhat closer to the business end…

At least now this looks like it might have something to do with materials or shaders. Note the words “Preview” and “Material” and “Shader” and “Texture” being bandied about with abandon. Yup, this is it. Now — WTF do I do?

3. Forgiveness

In Blender you can create a cube by pressing space (over a viewport, because Blender obeys someone’s idea of X-Windows conventions … yup if you’re going to pick something to be consistent with, make it something hardly anyone knows, likes, or can remember), then navigating the menu that appears: Add > Mesh > Cube.

Now try to Undo that (press “U”, remember? Neat huh how it’s mnemonic. Pity you’re wired for command-Z by thousands of hours of practice because operations you do all the time don’t need to be mnemonic, they need to be efficient … hmm I need to add that as rule 12 … and undo, cut, copy, and paste are all next to the cntrl/apple key for a damn good reason).

Yup … you guessed it. Even if you remember Undo, it doesn’t work for some obscure things, like … I dunno … creating cubes. (In case you think I’m not being sarcastic, pretty much the first thing you do when modeling anything using subdiv modeling is create a cube.)

Oh, if I manually delete the cube in Edit Mode I can undo it (the deletion, not the creation).

Correction: a reader has pointed out that ctrl-z works just fine in Blender, it just isn’t reflected in the menus. And since Undo doesn’t work consistently (e.g. if you create a cube you can’t undo it) you might be forgiven for thinking you didn’t know the correct undo shortcut, look at the menu, and conclude Blender was perverse (which it is, but in a whole new way).

The same reader said the same is true for ctrl-x, ctrl-v etc. This is a stretch! Create a cube, type ctrl-x (and you get the “OK? Erase All” dialog). Now ctrl-v — nothing. Again, in some cases Blender may behave kind of consistently, but this level of consistency is almost worse than none at all. It’s like making a bike with “back pedal” drum brakes, but decorating the handlebars with lever-operated brakes that work 75% of the time.

So I really shouldn’t belabor the “U” for undo thing. Instead I should point out that Blender doesn’t use standard OS file requesters, say, or doesn’t actually have an “Edit” menu to put the dysfunctional clipboard and undo commands in, or — heck — just belabor the fact that undo doesn’t work consistently.

If I manually delete the cube in Object Mode and try to undo the deletion I get a dialog titled “Single User” with four options, none of which (a) make sense, or (b) appear to do anything.

4. Visibility

Go back to item 2 and look at the pictures.

Did I mention that one of the things you’ll need to do is click “Add New” in textures? Then you’ll need to select a different tab (go ahead, try to guess which one) to see the texture you’ve created…

5. Beauty ∧ Simplicity

Look at the icons. QED. This is a freaking artists’ program. Every new version has a beautiful new splash screen.

6. Maximise Generality, Minimise Steps

Go back to item 2.

7. Smart Defaults

Go to items 2 and 4. Imagine that when I create a texture all the obvious features are populated by default. Consider 3D Studio Max which randomly assigns a simple texture to each newly created object (with a random color).

8. User Errors are Crashes

Under this metric, Blender crashes almost constantly. Luckily, undo sometimes does nothing. Most actions that cannot be undone (along with many that can be undone — grrr), however, have nearly invisible confirmation dialogs that appear under the cursor and can accidentally be confirmed.

9. Avoid Preferences

Actually, Blender is less customizable than most high-end 3d programs. The most useful customization is to make the left mouse select things rather than reposition the 3d cursor (something most people will accidentally do all the time and which can be very inconvenient, can’t (as far as I can tell) be done precisely, and can’t be undone.

10. Wizards

Blender actually doesn’t use Wizards per se. While as an exercise in Usability it represents an almost utter failure, at least it doesn’t insult you with wizards that navigate the UI doing things you have no way of doing or fixing yourself.

What Blender does have is some standard scripts, with names like “UV Copy from Active” and “Object Name Editor” that sound like non-graphical wizards offering functionality that ought to be a native part of the program and placed somewhere logically rather than lumped together in the scripts folder.

11. Online Help

Blender has lots of online help and tutorials (thus virtually proving the rule — when Usability fails, document your user interface). Given how terrible it is, Blender has some really good tutorials. You’ll need them — probably more than once.

  • Andrew Barry

    So I suppose the (free) question is whether there’s a decent tool being smothered by the UI, or whether it’s icing on an otherwise fetid cake.

  • Chris

    I’m typing this and I’m still agape at that last “ok/erase all” dialog. “Erase all” is the default?!

  • Tonio

    Well “Erase All” is the default when you create a new scene, so that’s not so much the problem as that (a) there’s no other visible option (clicking anywhere else is how you cancel), and (b) the “dialog” appears directly under your cursor and can easily be accidentally clicked, and (c) you can’t undo that operation.

    The only reason I even waste my breath on Blender is that it actually satisfies the zeroth law of usability: function as intended. There’s no point being usable if you don’t do anything… Blender is actually superbly functional, tightly coded, lightweight, runs on modestly specced hardware, stable, and produces good output. It’s just horribly, horribly painful to use.

  • nielsen

    yeah it’s a shame. i bet blender is a really fine piece of software but the ui sucks hard! what would i give to get REAL 3d max feeling ( i tried the 3d max conf ) out of blender…

    greetz
    nielsen

  • To be fair, Blender today — especially 2.5 — is vastly improved. I recommend giving it another shot. It’s not 3dsmax, but then max isn’t perfect either.

  • Quantum Anomaly

    As a devoted Mac user (and a convert at that) I love rants about UI/UX. The interface can make or break a software title or an entire OS. So I sympathize and agree with you to an extent. However…

    In Blender’s defense:
    1. The conventions are always changing and Blender is a Work In Progress. Have you tried the 2.5 Alpha?

    2. Their shit is open source. If you don’t like it you can change it (with sufficient programming knowledge). And it’s free, so nobody is forcing it down your throat to begin with.

    3. Your input may actually influence change in the way Blender’s interface is perceived – and therefor lead to a change in the structuring of the interface itself. So I guess what I’m saying is: your feedback about Blender helps to improve Blender. I’m not saying you should bash the software, but you illustrated some valid points and hopefully this will lead to a change for the better, if it hasn’t already.

    I suppose that last statement validates your point of view as well.
    This is the process by which tools are refined. Somebody bitches “the tool isn’t good enough” and someone else listens and makes it better. It’s an ongoing process of revision.

    4. Have you considered becoming a Blender developer? Why not be part of the solution?

  • I think if you look at some of my more recent postings you’ll find that I track Blender’s progress very closely. The Blender community’s attitude to UI criticism has completely changed in the last couple of years — they even got a usability expert to write a critique of the UI and make a bunch of very good recommendations. 2.5 is certainly not perfect but — once it’s actually working properly — will rank Blender among the most usable high-end 3d programs.

    As for your specific points: 1) all software is a work in progress, 2) open source software needs criticism to get better and (at the time I posted this) the Blender forums would flame anyone making the slightest constructive criticism (in fact I got private emails from other forum members sympathizing with my statements and saying they had received similar responses to their similar points), 3) I think it has (the post is three years old now), 4) I have, but I simply don’t have the time.