I've heard that Maya and 3ds max are miles ahead when it comes to the actual manipulating of 3d objects and that Blender essentially has a steep learning curve compared to those two. That someone who has experience with Maya or 3ds has a lot harder time learning Blender than vice versa.
I've used most animation packages (xsi, maya, 3ds, lightwave, modo, houdini) in the early 2000s and blender (old and new UI) threw me off constantly. I understand learning curves (I love both vi and emacs to bits) but still. It was so foreign. It's now in GIMP's bag of thousands papercuts.
Have you used Blender since around 2011ish? That was when 2.5x was released, which completely changed the interface. It took me a little while to re-learn it, but it's been much better since then.
I use Blender regularly, and it's fine now that I've submitted fully to its hostile interface. It must have been truly god-awful back then. I can work with it pretty fast now, but I still consider the entire interface perverse and rife with user-hostility, in a big-picture sense.
I've used them all. And I mean all - from early 90's onwards. 3D DCC apps settled on a common UI patterns in the early 2000's. Blender isn't among them. Years, heck now it's decades, of different operating systems, computer architectures, applications and Blender still baffles me. It's not like I'm not open to learning new and radical UIs. Take Zbrush for example. It's completely foreign, but you can power through it and be done. There's something about Blender that makes this hard, and I can't explain why.
> Take Zbrush for example. It's completely foreign, but you can power through it and be done. There's something about Blender that makes this hard, and I can't explain why.
It's quite the opposite to me. Blender has sensible names (object, mesh, scene) and a few somewhat weird ones (armature for skeleton, shape keys for morph targets). You can search any action with space bar. You can customize keys and set left click as default for selection.
With zbrush I couldn't figure out. "Subtool" still baffles me. I use a AHK script to make it manageable. Sometimes I don't know what's going on (why can't I edit?) and I don't have a log of actions (like blender) to help me figure that out. The thing I hate the most about zbrush, though, is not the UI, but the lack of poly group names (changing randomly if you add/remove one) and the fact that is completely impossible to export/import more than one paint layer at a time.
Blender's biggest weakness compared to 3DS Max, IMO, is the relative lack of non-destructive editing options.
Specifically, Max unifies (many) editing operations on the modifier stack. An object is the result of a sequence of operations on meshes/paths/patches/etc, from a root creation facility.
In Max you can take a torus, say, apply materials, move it about, distort the mesh, apply physics settings, and then go back to the first modifier and change the torus' inner radius.
In Blender, although you can parametrically create a torus with the same options as in Max and customize those settings immediately afterwards, once you edit the created mesh in any way - or even just select another object - you can't edit those settings any more: it becomes "just a mesh".
Max has mesh editing as a stage in the modifier stack (it also has Blender-style "real" mesh editing). You can layer multiple mesh edits on top of each other and toggle each off or whatever you like. Blender can do the same thing, but as shape keys. Both applications can make the same edits to a mesh, but in Blender they can't apply at different points in the modifier stack: they're all effectively applied before all the actual modifiers.
Non-destructive editing is overrated imho. In fact, one of the reasons I used Blender to model instead of Maya was its destructive editing features. Even though I had a full, legal access to a Maya workstation through college, I preferred Blender. I found that most of the time, Maya's construction history was more of a hindrance, and if your scene file started acting funny for a reason you couldn't figure out, you just had to delete all the construction history. For this reason, working in Maya always felt a little precarious, and Blender's relatively crude modifier stack felt more predictable.
Now, I was doing 3d, cartoony animation when I was working in Maya, and one could argue that non-destructive tools aren't that applicable to that context anyways. Fair enough -- if you need to change the inner radius of a torus after you've distorted the whole torus, Blender has a fairly mature add-on called sverchok: https://github.com/nortikin/sverchok
I'm very experienced in 3ds max (20 years) and I've tried to adapt to blender some 15 times and it's not for me. Max is just more intuitive, which is a shame because I'd rather work on linux or osx than windows.
Similarly I use Sublime Text and I've tried vim some 10 times and it's also not for me.
I love vim, and I love Blender, and I've been using Blender on and off at a hobbyist level for about 15 years now. I hadn't made the connection before, but I suppose they do have certain modes of thought in common. Both have a pretty bad learning curve, but I really enjoy all that you can do with them after learning.
I also used 3DS Max around version 4 for a class. The UI was more intuitive, and I felt like it would be comparatively painless to learn to do some impressive things relatively quickly...but doing 3D work as a hobbyist, and not one with much money when I was the most interested, Blender became my default. Gmax was pretty cool too, but at the time I was more interested in making pretty renders on a Linux machine, and less interested in creating game content on a Windows machine.
By default rotation is turntable, it has been like that for 4-5 years now. Also on startup you have a drop down menu to select Maya/Max hotkeys (but that's not enough because the UI is not Maya/Max).
I don't think that's really the problem. Switching to left click to select by default and having box selection and other common UI expectations would help. But also there's a mind set of "blender is awkward". I find it fast and fairly consistent, but only after having spent time learning it.
ZBrush on the other side, never stops being awkward to me.
it's an unbelievably bad interface, I mean to the point that it's unbelievably bad even for experts [EDIT: for the sake of the thread I'll keep this, but I shouldn't speak for "experts" - only myself and the days I poured into it.] It's not about being, erm, "differently intuitive", or requiring learning - it's simply broken. Imagine if while you were typing into this text box (as I am) the cursor would randomly move up a line, down a line, right a character or left a character and you had to manually put it to where you wanted the next character to go - the cursor didn't stay at the end of the line you were typing, as one might "expect". (This is just an analogy for nothing working the way anyone might reasonably use it.)
That's how broken blender is. It's hideously painful. If this text box were Blender, it would have taken me about 148 minutes to type this reply, with a random adjustment or undo or redo every letter of the way, I would have been fighting with this text box the whole way.
The frustration with trying to enter what I'm entering or edit what I'm editing. I am not exaggerating with how many hours it took to do something. If this text box were a 3D object instead of a text field, it would have taken 2-3 hours of my time in blender (analogy). Maybe saying that it applies to experts is going too far, since I'm not a blender expert and can't speak for them - maybe after 2,000 hours i'd feel differently. I did follow hours of video tutorials and read documentation for hours though. For comparison I don't complain about vim's interface, which is very unintuitive, I don't complain about Audacity, also unintuitive and requires looking things up, I don't complain about even git's options or, indeed, anything else, to the same extent. Even with powerful tools like lightworks (video editing) that require learning powerful and unintuitive paradigms and interfaces.
Blender is the only piece of software I've used in my life with such a hideously broken interface and no, the problem isn't with me.
It's a trauma. It traumatized me. There is no other piece of software on the planet that I would even conceive of using a word like that for - it's the only traumatic interface I've used in my life. Nothing else compares.
I am telling you my feelings as a user who accomplished what he wanted to and got beautiful results. Together with my beautiful results and outweighing them, I remember the trauma.
I poured days and weeks into learning it, made constant progress, enjoyed my time, and made some cool stuff. I was using it at a fairly basic level, and I don't have much experience with other 3D programs (little bits of 3ds max and gmax), and when I was learning it, I had a bunch of spare time and no financial incentive. Maybe those things are why I think of learning and using Blender as a positive experience, rather than a negative one. Then again, I tend to be the one to say that I like interfaces that most others hate. Maybe this is just another example.
Full of hyperbole. It's a different UI and you have to learn it. It's extremely self-consistent. Try putting a neophyte in front of ZBrush and they'd say the same thing but tons of people adapt and use it.
For the sake of me, after trying for hours I still couldn't understand how to do something as simple as put 2 cubes in a group and move them or resize them together in Blender and keep their dimensions with numbers that made the minimum sense while maintaining the 2 as different objects (i.e for texturing purposes).
Seriously, it's just that non intuitive. In the beginning I thought it was perhaps because I was used to C4D, but after that episode, I realised some things in blender simple don't make sense for someone that thinks in objects the mathematical way.
On a side note, I started 3D with POV-Ray many years ago, and, although not having a UI, at least the text description of the scenes was perfectly intuitive... I just can't reach that point with Blender.
Part of the confusion might be that a “group” in Blender is not like in other applications, and should probably have been called something else—a “grouped selection”, say.
In Blender terms, you probably wanted to create a “parent” (typically an empty) for your objects.
Sounds like just typical struggle with learning terms from a new software. You're looking for Parenting in blender it sounds like, much like the grouping you're talking about.
How to do what you wanted:
Shift-A Cube
Shift-A Cube
G to move second cube(assuming you don't want them stacked)
Shift right click to select other cube
Ctrl+P select Object to parent one to the other(you would use Keep Transform if you wanted to keep them together but move/scale/rotate separate)
Look in the Scene graph on the right, they're still separate objects so you can assign different materials to their faces, unwrap, un-parent them with Alt+P, whatever.
If you wanted to merge the geometry, you'd use Ctrl+J to join them.
The last really intuitive, approachable GUI, I think, was in trueSpace 3D (the "classic" interface that went back to Caligari on the Amiga; they added an awkward "just like the other guys" interface to later versions, and the gratis abandonware version only has that awkward interface). It's really a pity they couldn't keep up with the materials and render engines when it mattered; by the time they caught up with everyone else, the product's reputation as something that had gone from amazing (on relatively primitive machines) to "just a toy" was pretty much sealed, and there was no way back into the game.
I think you just never got the hang of the interface. A lot of people really like it. I used to use Maya. It's very different. I prefer Blender's interface, personally, and can get things done very quickly and smoothly with it.
if Maya is emacs, Blender is vim. Neither of them are Sketchup, and neither are trying to be.
By the way: I used to hate vi, cause I never gave it a chance. Recently I buckled down and learned how to use it. Now I think it's awesome, and I've hardly scratched the surface. But I finally got over the steep hump, and it was worth it.
With Blender, it's more than that. I've been a 3D person for almost 30 years, and I've never encountered an interface as user-hostile as Blender's. Never. In 2001, it took me less than a week to get super-productive with Maya, and it was like a dream. Just off to the races. I use Blender constantly now. I did get the hang of it, and I'm very productive with it now. I still consider it hostile. It fights the user every single step of the way until you learn all of its irrationality by brute force.
I agree with this sentiment and nobody should downvote it - it's not unusual. The downvotes might be due to the fact that this article is about a blender release so will attract readers as expected.
I started in 2001, with some autocad, 3ds r4 and 3ds Max experience, I struggled with the blender interface for many hours over a year or two.
It was not designed to be easily learned, but the ui is fast to use once you learn it. One hand on the keyboard hitting memorized hot keys, the other on the 3 button mouse...
What drove me to learn was that I could use a powerful tool, that's improving at a fast rate, legally, for free.
I since used lightwave, maya, sketch up, newer 3ds max... inventor. I still go back to Blender because it's faster for me.
Since 2.5, command and hotkeys in the interface, there's undo, much more friendly to new users, there's much better learning resources. If I was starting now, I'd probably become proficient 5 to 10 times faster.
Its funny, whenever I do Blender workshops, I introduce Blender it as the Emacs/Vim of 3d -- kind of for the reasons you mentioned. Yes, like Emacs/Vim, Blender has a very unusual interface, but you can become wildly productive if you learn its basic concepts.
Ok without reading the manual, tell me what the 'Correction' slider under 'Gather' does. It's (probably) an advanced feature, sure so maybe you can't expect to know at first. But why is there no way to find out other than googling?!!
No little help icon next to anything. No simple tooltips, let alone rich ones. There's zero discoverability.
> Ok without reading the manual, tell me what the 'Correction' slider under 'Gather' does
That's a weird approach to using software. Most people do not launch an application to twiddle with sliders and buttons but to accomplish a task. You can safely leave the correction slider alone until the day you need it (Googling will help), or until you read the manual.
Several posters have already compared Blender with vim - incidentally, vim also has zero discoverability, but once you're familiar with the vernacular, you will be unstoppable.
The interface is the one thing that has kept me far away from Blender. Maya has many faults but, in the end, it has a UI philosophy that let's you reach escape velocity once you understand it. I have given Blender a chance many times, and every time, its interface makes my head hurt. It has improved, for sure, but still doesn't beat Maya in many ways. This is in now way a wish of poor luck to Blender as a project.
This is the big problem with Blender. The interface lacks an artist's eye for what to prioritise and group, what to hide away in a menu with what and what to have out in the open for easy access. It's an incredible piece of software, but it has the steepest learning curve out of everything because of this. And 3D in general is the steepest learning curve of all without having to fight the gui.
ZBrush is similar at the opposite end of the spectrum, with it's own language and gui priorities, but at least it's entirely customisable.
Blender is COMPLETELY customizable. It's open source. Most of the time you can right click on something, and open the source code inside of Blender to update it to what you want. I don't normally do that as I make my own add ons instead.
I really, really like Blender. I use it only as a hobbyist, but pretty reliably once a year it's super useful - modeling furniture in my apartment before moving, making visualizations, even playing with little artistic ideas.
Contrary to some other comments here, I like the interface. My only experience with competing software was ~8 years ago, but I find blender's interface faster and intuitive once you get over a slight learning hump.
I love Blender, and I also like the interface and like you I use it probably once a year. Unfortunately I do forget how it works each time and end up going back to my copy of the Blender book.
Just wanted to point out that Blender also has a surprisingly decent video editing workflow. The usual caveats about the weird user interface and steep learning curve still apply, but I gave it about two days of practice and am very happy with the results.
Someone wrote a review claiming that Blender was the least painful way to edit video on Linux. I'm not sure if that was/is still true, but after trying two or three crash-tastic alternatives, I'm willing to believe it.
I was pretty sure it was on the proposed roadmaps, but it seems to be gone. Maybe the massive outcry (there was a good bit) changed the developers' minds.
I haven't tried the blender video editor, but Kdenlive has gone a looong way from the crash-all-the-time days to a modern and intuitive video editor (for a hobbyist at least).
Unfortunately on my xenial it still crashes so often that it's basically useless. I had to put together a short video recently and, after checking out all the available options, I ended up using the free version of Lightworks. I didn't try Blender though.
This seems like an incredible amount of features in a single release, especially for such complex software. (I don't use 3D software, including Blender, so I may be wrong).
Does anyone know what their codebase health is like, and how they retain the ability to ship so much?
It is an incredible amount of features, but Blender goes through a lot of updates with mostly bug fixes as well. I know a lot of the added features in this release (Spherical Stereo, Bendy Bones) underwent development for quite a while, and the fact that they've stabilized around the same time might be more coincidence than anything else. As far as codebase health and its sustainability, I think the role of the Blender Foundation, and a very enthusiastic community has made Blender what it is today. Plus there open movie/games has disproportionately shaped its development.
They are very well funded for an open source software community. The fast paced development is a result of their kickstarters, donation drives and so on.
Blender has been an incredibly useful tool and I use it almost every day. The number of things it can do is remarkable. Video editing, 3d modeling, animation, physics simulations, ray tracing, procedural texture generation, camera tracking, 2d image editing, character rigs, particle systems, the list goes on and on. The Blender Foundation continues to push out theses amazing updates despite the fact they only have a handful of people working full time. Blender is truly something special.
Blender is very much the Emacs equivalent for 3D editing software. It had a kernel of functionality written in C but the majority of the functionality is actually written in Python, which means there is really robust support for extensions and plugins.
Also like Emacs, the UI changes based on what mode you are currently in, which is super confusing at first because it is often not clear which mode you need to be in to accomplish some operation.
Also like Emacs, they have managed to cram an amazing amount of functionality into the program so it seems to do everything, and is rock solid (it would never crash, when 3DS Max would crash 3-4 times a day).
Blender on Linux is rock solid. Blender on windows isn't bad, but it does crash on me occasionally. It's funny, four years ago this wasn't at all the case. I can't tell you how much work I've lost from older versions crashing.
How's Blender's support for WebGL? I use Three.js quite a bit to make fun little animations, and for what it is I think it's the bees' knees. But for me, the lack of GUI means it remains slightly more time-consuming to be anything more than a labor of love.
A common workflow is to use the Blender Three.js exporter for exporting models, then compose the scene with the Three.js editor, and do the rest in code.
I don't have an opinion on the Three.js editor as I've never really used it. In fact I've only really played with the basic Three.js code. Looks pretty cool though -- who knows, maybe that's the next big open source 3d thing! There's even some VR sculpt features there -- pretty damn cool!
The main reason I prefer Blend4Web is because I've been using Blender for about 10 years, and for better or worse, it's the devil I know. Blend4Web development tries to follow Blender versions as closely as possible too, which means there's never any exporting issues. That said, if I was collaborating with artists, and they were using other 3d authoring tools, then Three.js might make more sense.
Blender is fantastic. Not only the modelling package is great and free (compared to the alternatives, aren't exactly cheap) and plugins are numerous and really good on average. Then beyond that, the renderer Cycles is GPU powered, and a beast, also for free. I've been using Blender every day for the last 2 years and I can't recommend it enough. Yes the UI will drive you mad at first until you get the hang of it. It's gotten better, but it's still different, at first.
I was working with Blender for the last few months and it can be quite confusing. Yesterday I had this weird occurrence where I had call bpy.ops.object.select_all(action='DESELECT') everytime before changing the matrix_world.translation values of some meshes. (Even though I didn't select anything in between). It took me hours to find out why the meshes weren't moving correctly.
I guess Blender is not perfect for using it with python only.
I have been using Blender on and off since around 1999. I initially struggled and kept my 3ds Max. After the 2.5 update it has been uphill since then. I now use it as my primary 3d application. (I am mainly an animator but do everything else.)
It's interface, once understood is blazing fast to me. Yes it has caveats. So does every other big 3d package. I prefer some of the ways that Maya does things, and other times the way Blender does things. (I will never go back to the crashing fits of 3ds max, so much lost work.) But in the end it's the same as all the other tools. You just need to keep at it and it will become second nature.
The UI idea of no overlapping windows is probably my favorite feature of Blender's GUI. The ability to split windows and swap them to ANY part of Blender allows you to set it up exactly how you want, plus you can save your workspaces. Set it up once and forget it.
I can agree that some common commands have obscure shortcuts, but EVERYTHING is customizable. I do mean everything. (Side note, not everything is customizable in Python. :*( But most things are.) I have my own tool panel for all of my animation tools, I have custom shortcuts that overwrite some shortcuts that I never use. In the end I'm faster because of it's UI. Most of all I feel like I have a custom studio proprietary software because of how customizable it is, with just a tiny bit of Python knowledge. I don't claim to be a good programmer, but if you can write some html, you can customize Blender till you get what you want. Heck you can even make Popups/overlapping windows with 1 hotkey + mouse gesture.
I may be an advocate of Blender, but I have used just about all 3d packages and can gladly say that I'm happy with my experiences with Blender. (Since 2.5)
74 comments
[ 3.2 ms ] story [ 144 ms ] threadYou probably heard years ago. Blender has changed _a lot_ in the last 10 years.
It's quite the opposite to me. Blender has sensible names (object, mesh, scene) and a few somewhat weird ones (armature for skeleton, shape keys for morph targets). You can search any action with space bar. You can customize keys and set left click as default for selection.
With zbrush I couldn't figure out. "Subtool" still baffles me. I use a AHK script to make it manageable. Sometimes I don't know what's going on (why can't I edit?) and I don't have a log of actions (like blender) to help me figure that out. The thing I hate the most about zbrush, though, is not the UI, but the lack of poly group names (changing randomly if you add/remove one) and the fact that is completely impossible to export/import more than one paint layer at a time.
Specifically, Max unifies (many) editing operations on the modifier stack. An object is the result of a sequence of operations on meshes/paths/patches/etc, from a root creation facility.
In Max you can take a torus, say, apply materials, move it about, distort the mesh, apply physics settings, and then go back to the first modifier and change the torus' inner radius.
In Blender, although you can parametrically create a torus with the same options as in Max and customize those settings immediately afterwards, once you edit the created mesh in any way - or even just select another object - you can't edit those settings any more: it becomes "just a mesh".
Max has mesh editing as a stage in the modifier stack (it also has Blender-style "real" mesh editing). You can layer multiple mesh edits on top of each other and toggle each off or whatever you like. Blender can do the same thing, but as shape keys. Both applications can make the same edits to a mesh, but in Blender they can't apply at different points in the modifier stack: they're all effectively applied before all the actual modifiers.
Now, I was doing 3d, cartoony animation when I was working in Maya, and one could argue that non-destructive tools aren't that applicable to that context anyways. Fair enough -- if you need to change the inner radius of a torus after you've distorted the whole torus, Blender has a fairly mature add-on called sverchok: https://github.com/nortikin/sverchok
Similarly I use Sublime Text and I've tried vim some 10 times and it's also not for me.
I also used 3DS Max around version 4 for a class. The UI was more intuitive, and I felt like it would be comparatively painless to learn to do some impressive things relatively quickly...but doing 3D work as a hobbyist, and not one with much money when I was the most interested, Blender became my default. Gmax was pretty cool too, but at the time I was more interested in making pretty renders on a Linux machine, and less interested in creating game content on a Windows machine.
I don't think that's really the problem. Switching to left click to select by default and having box selection and other common UI expectations would help. But also there's a mind set of "blender is awkward". I find it fast and fairly consistent, but only after having spent time learning it.
ZBrush on the other side, never stops being awkward to me.
That's how broken blender is. It's hideously painful. If this text box were Blender, it would have taken me about 148 minutes to type this reply, with a random adjustment or undo or redo every letter of the way, I would have been fighting with this text box the whole way.
Blender is the only piece of software I've used in my life with such a hideously broken interface and no, the problem isn't with me.
It's a trauma. It traumatized me. There is no other piece of software on the planet that I would even conceive of using a word like that for - it's the only traumatic interface I've used in my life. Nothing else compares.
I am telling you my feelings as a user who accomplished what he wanted to and got beautiful results. Together with my beautiful results and outweighing them, I remember the trauma.
Seriously, it's just that non intuitive. In the beginning I thought it was perhaps because I was used to C4D, but after that episode, I realised some things in blender simple don't make sense for someone that thinks in objects the mathematical way.
On a side note, I started 3D with POV-Ray many years ago, and, although not having a UI, at least the text description of the scenes was perfectly intuitive... I just can't reach that point with Blender.
In Blender terms, you probably wanted to create a “parent” (typically an empty) for your objects.
How to do what you wanted:
Shift-A Cube Shift-A Cube G to move second cube(assuming you don't want them stacked) Shift right click to select other cube Ctrl+P select Object to parent one to the other(you would use Keep Transform if you wanted to keep them together but move/scale/rotate separate)
Look in the Scene graph on the right, they're still separate objects so you can assign different materials to their faces, unwrap, un-parent them with Alt+P, whatever.
If you wanted to merge the geometry, you'd use Ctrl+J to join them.
if Maya is emacs, Blender is vim. Neither of them are Sketchup, and neither are trying to be.
By the way: I used to hate vi, cause I never gave it a chance. Recently I buckled down and learned how to use it. Now I think it's awesome, and I've hardly scratched the surface. But I finally got over the steep hump, and it was worth it.
It was not designed to be easily learned, but the ui is fast to use once you learn it. One hand on the keyboard hitting memorized hot keys, the other on the 3 button mouse...
What drove me to learn was that I could use a powerful tool, that's improving at a fast rate, legally, for free.
I since used lightwave, maya, sketch up, newer 3ds max... inventor. I still go back to Blender because it's faster for me.
Since 2.5, command and hotkeys in the interface, there's undo, much more friendly to new users, there's much better learning resources. If I was starting now, I'd probably become proficient 5 to 10 times faster.
https://wiki.blender.org/uploads/f/f5/2_78_env_lighting.png
Ok without reading the manual, tell me what the 'Correction' slider under 'Gather' does. It's (probably) an advanced feature, sure so maybe you can't expect to know at first. But why is there no way to find out other than googling?!!
No little help icon next to anything. No simple tooltips, let alone rich ones. There's zero discoverability.
That's a weird approach to using software. Most people do not launch an application to twiddle with sliders and buttons but to accomplish a task. You can safely leave the correction slider alone until the day you need it (Googling will help), or until you read the manual.
Several posters have already compared Blender with vim - incidentally, vim also has zero discoverability, but once you're familiar with the vernacular, you will be unstoppable.
They only read the manual if the software is so unusable that it requires it. Have you ever seriously read the PowerPoint manual for example?
There's even an xkcd about this.
ZBrush is similar at the opposite end of the spectrum, with it's own language and gui priorities, but at least it's entirely customisable.
Contrary to some other comments here, I like the interface. My only experience with competing software was ~8 years ago, but I find blender's interface faster and intuitive once you get over a slight learning hump.
Someone wrote a review claiming that Blender was the least painful way to edit video on Linux. I'm not sure if that was/is still true, but after trying two or three crash-tastic alternatives, I'm willing to believe it.
Does anyone know what their codebase health is like, and how they retain the ability to ship so much?
Also like Emacs, the UI changes based on what mode you are currently in, which is super confusing at first because it is often not clear which mode you need to be in to accomplish some operation.
Also like Emacs, they have managed to cram an amazing amount of functionality into the program so it seems to do everything, and is rock solid (it would never crash, when 3DS Max would crash 3-4 times a day).
It's not for everyone, but it is very powerful.
I don't think that is true. It provides a Python API, sure. But most of it is still C or C++. Github says only 4% is Python.
A common workflow is to use the Blender Three.js exporter for exporting models, then compose the scene with the Three.js editor, and do the rest in code.
The main reason I prefer Blend4Web is because I've been using Blender for about 10 years, and for better or worse, it's the devil I know. Blend4Web development tries to follow Blender versions as closely as possible too, which means there's never any exporting issues. That said, if I was collaborating with artists, and they were using other 3d authoring tools, then Three.js might make more sense.
What helped me a lot is to learn all keys. I even printed out a shortcut cheat sheet.
Then I followed a moddeling tutorial and now I can say it's maybe the best software I ever used.
But the key to learning Blender is to learn to use your keyboard.
I guess Blender is not perfect for using it with python only.
It's interface, once understood is blazing fast to me. Yes it has caveats. So does every other big 3d package. I prefer some of the ways that Maya does things, and other times the way Blender does things. (I will never go back to the crashing fits of 3ds max, so much lost work.) But in the end it's the same as all the other tools. You just need to keep at it and it will become second nature.
The UI idea of no overlapping windows is probably my favorite feature of Blender's GUI. The ability to split windows and swap them to ANY part of Blender allows you to set it up exactly how you want, plus you can save your workspaces. Set it up once and forget it.
I can agree that some common commands have obscure shortcuts, but EVERYTHING is customizable. I do mean everything. (Side note, not everything is customizable in Python. :*( But most things are.) I have my own tool panel for all of my animation tools, I have custom shortcuts that overwrite some shortcuts that I never use. In the end I'm faster because of it's UI. Most of all I feel like I have a custom studio proprietary software because of how customizable it is, with just a tiny bit of Python knowledge. I don't claim to be a good programmer, but if you can write some html, you can customize Blender till you get what you want. Heck you can even make Popups/overlapping windows with 1 hotkey + mouse gesture.
I may be an advocate of Blender, but I have used just about all 3d packages and can gladly say that I'm happy with my experiences with Blender. (Since 2.5)