Note: I will not put this post as a ‘counted’ one to the ‘Why not’ section, because it is more generic stuff than that.
Buddhism for developers: The trouble is you think that the users have time…
Reading the forums it is crystal clear that most of the 3d guys hate the GUI of Blender, and most of the Blender users hate the very same way the GUI of Max (as an example).
Most of them say that ‘the other app’ has a ‘terrible’ GUI, which is ‘too messy’, ‘too difficult’, ‘illogical’ and ‘not intuitive at all’.
Well, I have to say they are both right and wrong at the same time.
First of all I have to talk about some psychological stuff
Most of us already met – at least I hope it – the ‘Hierarchy of Needs’ or as commonly known ‘Maslow’s pyramid’.
If not, take a look on this, it could be a life changer.
(Just being cautious I would like to note, that it is just one of the theories related to motives and it is not perfect at all.)
But – in our case – it will explain a lot about users and their attitudes without leading us into false deductions.
(I’m working on the adaptation of this hierarchy for software development, but that will be a long way process. I know others already did it, but I was not satisfied with their results.)
I will not deal with the first level now.
On the second level of the pyramid we find ‘safety‘.
It is not just about the motive to have physical or economical security, it is about a ‘generic feeling’ of safety.
Our moral, our ‘way of thinking’, our intelligence and our faith both results the fantastic outcome: ‘I live in a house built from stone and far from the river, I own a .44 Magnum for self-defence, I eat healthy, I do jogging every day, I have 100.000 in the bank and I go to church every Sunday. Nothing bad could happen to me; God loves me and my Daddy and Mommy told me that, too”).
Well, I think it sounds a little bit sarcastic in this way, but I don’t want to be politically correct, because that is a kind of discrimination, too:)
As we can see, this ‘I feel safe’ state bonded both to rational thinking, rational or irrational habits, rules, faith, etc.
This is how we work.
It is common in every single human being that more or less we live our life, do our jobs in an accepted and supported way by the community we exist in.
Even if it is a subculture.
Even if we think that we are some kind of 21th century rebels or guerrillas in some way and we prefer to live in a cult what says no to the ‘mainstream’.
We can easily see – with opened eyes – that the patterns of our lives show significant matches to the rest of the human kind.
We even share more common stuff with our ‘so-called enemies’ than we would easily admit.
‘My dad did it in this way and it worked for him, so it will work for me, too.’
‘If I’m part of the crowd, I’m defended by the crowd’.
Small and permanent programming by culture and evolution.
And it makes us ‘to feel safe’.
And it is true not just for our daily life, not just for our morals, but for so special things like interface design.
In our case:
‘It works this way in all the major software packages I used before, so it must work in this one, too.’
‘If the most of the app developers solved that function in that way, it means that the solution of the majority is the best one’.
Are these statements true?
Are the expectations of the users rational to be able to adapt their common work-flown within different packages?
I have to say: yes.
At least partially.
Or maybe I should say: ‘evolutionally’ and ‘culturally’:)
Most of the people want to feel familiar in any application from the very first moment of usage and we cannot blame them because of it.
We taught them for casual pattern-recognizing methods, we taught them to ‘think different’ just in casual ways (take a look on the thousands of Apple users, who stand completely ‘differently’ before an Apple store, waiting together for their common new ‘difference-factor’…;).
Because of the fact that we as ‘average’ people share the profit what comes from the ‘real out-of-the-box thinkers’, it is more simple to go with the crowd.
Someone always will come to say what we should think, say, vote for or drive.
Isn’t it comfortable?
Steering wheel or joystick?
Could be a car controlled by a joystick?
Do we expect as drivers from a car to have a steering wheel, independently from its brand?
Of course we do.
Do we expect that using the steering wheel for changing directions must be almost identical in all cars? (axis and the direction of rotation)
Of course we do.
But cars could differ in other things and it doesn’t make our life easier.
Look at a guy who got used to automatic transmission shift and have to drive a car with a manual one.
Or ask someone who is forced to drive on the opposite side of the road abroad.
They immediately ask you:
‘Why changing speed manually is better then the automatic transmission?’
‘What is the sense in driving on the other side?’
And they summarize their opinion with these words:
‘It is stupid, it sucks!’
Human sensation, human mind is built and trained for pattern-recognizing and fast judging by both the evolution and our cultures, for our survival.
No faith, no theories, no gurus, no rules could ever overwrite this (maybe science will have a tool in the future, but I don’t support the usage of that).
So do not put any ‘new’ logics into anything if it is not far superior to the old one.
And never ask people ‘not to judge’. Ask them to always reconsider their judgements. That one is possible, the first one is not.
In any ‘unknown’ territory we try to adapt our existing knowledge; if we don’t succeed, we judge: Blender has a crap GUI, Max has a crap GUI.
And most of us makes this judgement in a few minutes (problematics of limited resources, I will write about it in the future).
Let’s see this in practice with Blender
(from the point of view of a 3D guy who had former experiences with other apps):
I’m a possible user.
I used several softwares before as an expert.
I would like to try Blender.
I start Blender.
Hmmm.. a command line window…Oh, I see, here it comes.
It is not fullscreen. I don’t know why.
Unknown GUI, but looks promising at the first sight (2.6).
(I don’t panic, because I’m used to use different GUIs. Logic matters, not the layout, the colors or the design of the buttons.
I know that I am capable for using serious other packages, so I start this test with big self-confidence.
I also think that my general pattern-recognition skills are good (actually most of us thinks this way, even if it is not completely true).)
So, I want to make something as a ‘test’, because I was able to do that in minutes in all former packages I ever tried; just to create a simple stuff or a specific stuff what is relevant for my general work-flow in other apps…
…and I miserably fail in a few minutes.
It happened to me about 5 times with Blender and according to the forum posts it happens with most of the newbies with ‘serious’ experience in pro-graded commercial apps.
This is the 6th trial, I don’t want to give up. I hit ‘F1’ for help.
Fail… maybe I should search and open the ‘help file’ manually. Weird.
I try to use the menus, just to add another cube to the scene.
I realize that accidentally happened something with the menus (I don’t even know what I did), but some stuff disappeared.
I go for the typical solutions to get it back, but Blender doesn’t offer me those.
I restart it: everything is fine.
I find the ‘cube’ in the menu, I select it.
I realize that it was added automatically, without my interaction.
So it doesn’t have the size I wanted and doesn’t have the position I wanted.
I want to resize it, but I cannot find the fields…
I want to delete it to start over, but it asks me if I’m sure.
‘Of course I’m sure, stupid app, that is why I pressed ‘Delete’, not X (!;), Y or Z.’
I check some tutorials and start over: finally I have the needed cube.
(Great. I’m a little bit frustrated and confused for now.)
My phone rings, I have to do something else, so I decide to continue this test scene later on my computer.
I press ‘quit’, but I forget to hit ‘Save’.
It quits without warning me to save.
I note that, but it is too late…
When I come back in a few hours I decide to free up some space on my hard drive with uninstalling Blender, because it lacks serious features and acts in a stupid way.
Come in, it just let me to loose my work without asking if I’m sure about quitting. What other app does that?
That is how Blender lost an experienced user.
And when someone asks me about Blender, I say that the developers forgot to put basic things into it like ‘parametric input for object size’ or a ‘warning before quitting’.
For the most of them it matters what I say and it results that Blender looses more possible users.
And all of this happened because of a bad GUI and logic.
Was I right with my judgement?
I was completely wrong in absolute terms.
Blender offers these functions (and of course a lot more), but I had to give it a 7th trial with weeks of continuous swearing to find them, because of the terrible GUI and inner logic compared to my previous experiences.
You maybe say: why do you use the word ‘terrible’? It is not terrible at all…
Well, using the word ‘terrible’ instead of ‘not friendly’ or ‘inappropriately designed’ mirrors my emotions as a typical user.
I became frustrated and angry.
I felt discomfort, what used to happen really rarely to me since I’m not a beginner in this profession.
It made me feel my existing knowledge worth nothing.
Blender forced me to be (and feel as) a noob again and it didn’t give me any ‘feeling of success’ as a reward, just continuous Google searches and infinite amount of tutorials.
Take a look on Maslow’s pyramid again…
What is on level 4?
I ‘lost’ it in Blender and I have no chance even to estimate how much time I need to learn Blender. All that I found that Blender has a ‘steep learning curve’.
Former ones worth nothing within Blender; in Blender I was not able to achieve anything yet, not even a small one without help.
What is on level 3?
I already belonged to expert app users; if Blender developers want me to join to the users of their app as a noob, they should encourage me with familiar GUI, inner logic based on industry standards, perfect and up-to-date manuals and tutorials.
To be free is not enough (as I wrote earlier in the ‘dead horse’ example in this post).
(Although I have to say that Blender as a horse is very much alive, just sleeps in an irregular way:)
What is on level 1?
I cannot be creative in something I cannot handle even in basic level.
In general I want a tool what enhances/extends my imagination, not forces it to work only in one special way what differs from everything I formerly used.
And because of the fact that there is no perfect ‘interface’ between humans and computers yet, I expect from the interface to force me to go with the most efficient way available at this very moment, but with a permanent support.
And this should mean not just the takeover of widespread AND efficient logics from other apps, but presenting a different GUI for Blender newbies and Blender pros.
And what about Max?
I’m sure that Blender users thinks the same about Max and I agree with them.
On the other hand it must be noted that Max is closer to ‘common’ interfaces than Blender and Max knowledge could be adapted easier than the Blender one.
And it is sad for Blender users.
Because it means not just the fact that ‘professional’ and ‘commercial’ 3D users rarely move to Blender (the price factor not counted), but it also means that professional Blender users own a type of knowledge what couldn’t really be adapted easily to commercial packages (at least for Max).
On the job market the knowledge of a Blender Pro worth almost nothing compared to a mid-level Max or Maya user.
Isn’t it a shame?
But it could be changed easily.
I will write about that in the next parts of this article, but before that I will be evil with 3Ds Max (just to be biased;) and bring some more psycho-blabla:)…
I hope you enjoyed it:)