a broad suggestion to the UI team and everybody else

First of all, I am not going to venture a single personal opinion about how Blender should be. I want to facilitate a solution that might benefit the developers.

I know this is a vast and ancient battle-field littered with discarded weapons, broken bodies, weeping widows, scuttling scavengers, and Don Quixotes. But hear me out because I don’t see much conversation from this level of perspective.

I see endless stress in Blender between all the users who want features THEIR way, and the developers attempt to make as many people happy as possible, which is just plain impossible without a clearer picture of how people differ. One of the problems with crowd-contribution is the lack of discipline. I personally believe that Ton’s dedicated leadership, for better or worse, is hands-down the main reason Blender development has thrived and grown so much for so long. But a president cannot consider the options then commit to a decision when they can’t even clearly hear the crowd. Ton and the heavy contributors do this well but it is the voice of the crowd that may be hard to hear, like a huge protest with everybody yelling at once.

However, if the users are separated into specific bunches of well-understood user-types, then Blender could be designed with those camps in mind and the individual user could select which modality is more comfortable. I see some clear examples of this, particularly the beginner vs pro conflict of interest for the Blender team.
Then it would truly address every user in the larger spectrum. (and yes, possibly overwhelm the developers, but they can decide where to draw the line). It may also highlight biases at the developer level, which could get uncomfortable :slight_smile: .

Some examples are below of those camps I am thinking of. Discuss possible solutions that address each group then allow the user to select which paradigm feels right to them and configure their Blender to that state (such as the checkbox in Preferences that sets mouse left- or right-button Select). I’ve heard there is a pending workflow-oriented preset system in the works, which is similar but not as broad in scope as I am thinking. Some of us non-beginners don’t even HAVE a workflow.

These are only some examples I have observed both in Blender and in the larger world, and I am sure others will mention new ones that never occurred to me or other people. And THAT is why this discussion is important!

  • Some people like to ‘RTFM’, but others prefer hands-on learning by mistakes.
  • Some people like to be walked through lessons (tutorials), while others just want full-blown documentation they can refer to.
  • Some users are people-oriented learners (video tutorials) and some only need a list of steps to follow, with pictures when text alone is insufficient, or sometimes just an idea that creates an ‘aha’ moment.
  • Some people want a well-structured interface, and others like to accrue a structure in a seemingly chaotic fashion.

(think of physical workspaces: some people always keep everything organized and cleaned-up even while working; others like me tend to let a workspace become heavily cluttered because I usually remember where I last put something. Stopping to constantly clean-up and organize feels like it interrupts my focus and churns my workflow. We are not ‘undisciplined’, we just have a more organic approach to efficient workflow and a tolerance for (personal) chaos.

  • Some people are heavy productive users with established and streamlined workflows, while the cumulative rest of the users are more experimental and idiosyncratic, which could include beginners.
  • Some people rarely use Blender and play with many different features in scattered fashion; others use it every single day and want very specific productivity enhancements. The latter tend to have a more coherent voice that may drive much of Blender, but the ‘incoherent’ group-voice of the former is very very large. Think of it as breadth versus depth. In this world it IS the pros that tend to steer the ship, whatever that is.
  • Some people want everything visible at once, others want to declutter and minimize information overload.
  • Some people want an intuitive approach to learning how to use something (a more familiar interface); others have the mental energy to learn how to use what might be an alternate but ‘better’ approach.
  • Some people come from environments that have so much presence and authority that it must be ‘the correct way’. You might say that some people intrinsically respect authority while others are strongly independent.
  • Some people just have their heads on straight and can blaze through whatever they are doing, but sometimes their solutions or answers are not helpful to the rest of us muddlers.

I think it might be of use to condense everything into some kind of short list that could be kept in mind with every decision the developers have to make (and yes, some won’t want to work that way and think any attempt to ‘group’ people creates stereotypes, but I’m hoping THAT discussion does not dominate and cause a flame-war :().

I don’t have answers for each of the examples above or even how they may apply to Blender. I’m sure some of them don’t even make sense (without further discussion) or have clear solutions. But it would be interesting to see how much this discussion might clarify the source of all the endless discussions of ‘what is correct’ and ‘what makes sense’.

(oh, and some people are interested in this kind of abstraction (‘ideas’, for you poor-English speakers), while others could give a damn, but they probably won’t participate much :slight_smile: ).

peace

The Captain leaned across the table and looked the Lieutenant right in the eye. “John,” he said, “I want to know what time it is, not how the damn clock works.”

Blender development is driven mainly by two things: individual developer interest, and big projects sponsored by the Blender foundation. As a model, it’s worked pretty well so far, and if it ain’t broke, why are we trying to fix it? You may see ‘stress’ at this level, but in the ethereal atmosphere where devs live, I doubt our ‘stress’ gets much more attention than the random clucking of chickens scratching in the barnyard. I don’t think it’s going to be useful to push a radio button in the user preference window to set Blender up with “Keep it simple for me” “Make everything visible” “I want my Maya workflow back” options.

However, this isn’t to say everything is wonderful in Blenderlandia, as there are clearly some issues. It appears to me, though, that the issues are mainly of documentation. It’s scattered, a lot of it (a hell of a lot of it) is out of date. You have to really be following Blender’s development to take advantage of the latest features, since a lot of the ‘documentation’ so called is in threads here at Blender Artists, or in developers notes published with each release. These are not places new users would normally know about or be expected to find. This leaves people at the mercy of YouTube tutorials, of varying quality and vintage, and third party web sites that try to do a bit of quality control over their offerings.

It is very useful, though, in writing documentation, to have an audience in mind. This is something that is frequently lacking in technical documentation especially, since, unfortunately, a lot of programmers consider end-users to be some kind of lower life form, and have a hard time taking their concerns seriously. So your idea of characterizing classes of users may be useful, but to documentation writers rather than developers (even if they are occasionally the same person.)

So, I’d suggest a focus on groups of users in these terms:
What do they want to accomplish with Blender?
What do they already know?
What do they need to know to do what they want to do?

You are an articulate and thoughtful person, shadowphile. Consider whether Blender Documentation could benefit from having “specific bunches of well-understood user-types” and maybe working toward a definition of those types. There is a much greater chance of having a significant effect on Blender usability by upgrading the documentation than by putting pressure on devs to make ‘user friendly’ modifications to the software. Besides, it is something you don’t have to be a developer to contribute to.

@Orinoco
“Captain, I don’t know the time. The clock is broken.” :slight_smile:
If it wasn’t clear, my post was only about the UI, not anything else. The developers are making huge strides in the functionality and nobody wants to interfere with new goodies every six months or so.
But with more and more power, the UI is becoming a more contentious subject because good general solutions are becoming less easy to devise. Everybody wants to optimize the UI according to their own cognitive processes but that is like a ball of cats tied together. None of them are the enemy but they will kill each other trying to get free (sorry, the metaphor needs some work and I’m a cat person!)

Documentation is a completely different (albeit important) subject but it derails the intent of my post. I may have come off as a rabble-rousing union organizer but my intent was only to facilitate better understanding of how the user-base uses Blender at a cognitive level, not a project level, as you suggested about the documentation. UI design has been studied a lot and recently a far more visible user than I, Andrew Price, boldly communicated a well-considered stance that I almost entirely agreed with, but it seemed like it was kind of ignored, other than to (re-)establish a UI committee. If he DID have an effect on the developer side, it was too background for me to see. My long term stance has been ‘allow the user to customize as much as possible’ but that can be implemented at so many different levels. I keep seeing developer solutions that give us different fish, and no solutions that allow us to fish on our own (sorry, another shaky metaphor). Right now we have no ability to put random elements together in the UI, such as a toolbox or shelf or dockable icons, or hide stuff we don’t normally ever care about to make room for other stuff we do care about.

I should have known better that trying to take a pro-active position in a crowd this big. I’m just another chicken trying to cluck louder than the next. I usually recognize beforehand when adding my own voice will only compound the noise.

This started for me because I finally learned how to build Blender on my own (yay!) just so that I could make one teeny change that makes a huge difference in usability for me. I literally added just one additional character to reverse the behavior of the UI. Talk about easy coding! I thought about adding a checkbox in preferences so that others can chose my option or not, but now I have sort of lost interest. I think from now on I will just focus on doing my own thing, especially now that I have a little more freedom to redesign my own solutions, and maybe share them on graphicall if they aren’t too idiosyncratic.

The trouble with custom interfaces is that it is impossible to write tutorials for them. If you look around the forum, you’ll see many cases of some poor soul getting Blender, finding a YouTube tut, and then complaining here that 'it doesn’t work". Sometimes he thinks Blender is broken, sometimes he blames the tutorial. Quite often, the tut is for an earlier version of Blender, and something was moved to a new place in the interface, and the poor schmuck can’t find it, figures it’s not important, and tries to skip that step and carry on. Results are what you would expect.

I recall a clever guy a while back. He did a bunch of beginner tutorials based on a simplified UI, one he designed with nothing more than modifications to the User Preference file and a little python script add on. While I don’t recall the specifics, the tutorials were pretty slick. He showed how to do some fairly sophisticated work with a nice, intuitive work flow. Big problem was, once a new user had downloaded his User Preference mod file, and installed the add-on, every other Blender tutorial on the internet was broken for that user.

Actually, I think that was a feature, rather than a bug. I suspect the fellow wanted to build a large user base who would be locked into tutorials based on his particular Blender modifications, and would eventually add a modest subscription fee to access his tutorials. Well, that’s fine, entrepreneurialship and all that, but there are only so many hours in a day, and writing tutorials for every aspect of Blender that his users might want to delve into would demand countless hours that, until his pay wall scheme started producing some revenue, he would have to handle on his own, and uncompensated.

Needless to say, that fellow has not taken over the Blender community by storm, doubtless he’s still out there somewhere, but if his idea had taken off, I’m sure everyone would know his name. But what I see in your proposal is that fellow’s bright idea, multiplied by three, or four, or however many different selectable UIs a new user might choose from. Check out some tutorials. See how many actually specify which Blender version they are written for. About a third, right? You’d think that tutorial writers would at least put that kind of basic information right up front, but many don’t. I would despair trying to herd that many cats toward specifying which UI their tutorial addressed as well.

I’m pretty sure that wanting to mess with the User Interface is a common desire of all users of any software. The first non-tutorial based program I wrote for my old Atari 800 back in the day was a menu that would let me pick a file to load from those available on my newly acquired floppy disk drive. And Bill Gates, of course, made a fortune messing with the user interface to DOS. C’est la vie…

I am glad you’re able to scratch that itch by making modifications to your Blender build. Now you just have to produce amazing models or animations or games or whatever, to show that it’s all worthwhile… :evilgrin:

PS: Unfortunately for Lieutenant John, the Captain had asked when some task would be finished, and the hapless John launched into an explanation of all the variables and constraints he and his division faced in accomplishing said task. Trying to blow smoke up a Captain’s ass is never a good idea.

The trouble with custom interfaces is that it is impossible to write tutorials for them. If you look around the forum, you’ll see many cases of some poor soul getting Blender, finding a YouTube tut, and then complaining here that 'it doesn’t work". Sometimes he thinks Blender is broken, sometimes he blames the tutorial. Quite often, the tut is for an earlier version of Blender, and something was moved to a new place in the interface, and the poor schmuck can’t find it, figures it’s not important, and tries to skip that step and carry on. Results are what you would expect.

Nothing to do with custom interface. But lack of documentation and undocumented changes in general. A new version nearly always breaks some old tutorials. And guess what will happen with the new keymap :slight_smile:

Most probably one of the reasons why something that can be done in two to four weeks lasts several years already. Wasn’t a new keymap already planned for pre 2.49?

I recall a clever guy a while back. He did a bunch of beginner tutorials based on a simplified UI, one he designed with nothing more than modifications to the User Preference file and a little python script add on … Needless to say, that fellow has not taken over the Blender community by storm, doubtless he’s still out there somewhere, but if his idea had taken off, I’m sure everyone would know his name.

Graphicall is full of experiments. Lots of clever guys around. But the artists nearly always uses the official version. Means you need to have it in trunk to be recognized. But to get usability improvements and UI changes into the trunk is in nearly all cases mission impossible.

Lesson is: when you want to do a fork, then you have to do it right, from the beginning on. It would need its own eco system, own marketing, own page, recuiting forces, the whole program to establish a new software. Because it is a new software then. Even when just a few flags are different set.

I like the idea though with a community version that can be installed over the original Blender to do some usability tweaks. Maybe something to keep in mind :slight_smile:

Guess I was overly ambitious trying to spearhead something so broad. Oh well.
Teaching with an overly customizable UI is definitely a fundamental problem.
The only solution I can think of is to have some kind of way to force a default arrangement for each editor and/or screen, recommended by authority and peer-pressure for all tutorials.
It might slow the teacher down fumbling with an inefficient interface, but that probably benefits the student most of the time.
The display might even include a clearly labeled version/build text so the teacher doesn’t have to care about it.
This really brings to the foreground what is probably the most difficult UI task of all: beginners vs advancers. Most tutorials for beginners SHOULD use an un-customized UI, but advanced users probably won’t have that issue.

Lots of other softwares allow customized interfaces, in fact the general toolbar design in most programs can be customized with all kinds flexibility to group and arrange and palletize (toolbar-ize?) individually selected tools.
I am not sure how the tutorials for those others work out but even Maya and Solidworks offer customized toolbar/shelf/pallets. I had a copy of Maya in '98 or so, and even then it offered numerous interface and tool arrangements.

Really, I’m ok with leaving most of the UI alone, especially for reasons discussed above.
But all I want is a way to build a ‘Favorites’ tool collection in a permanently visible location. The ability to save and recall different collections for different tasks, position in different places on the screen, and the flexibility to arrange the collection and choose icon/text/both would just sweeten the deal. Hmmm…that could be a new editor window…it would fit in with the bigger scheme, be avoided for tutorials, and still use conventional UI elements to retain the Blender-way. I wonder how difficult this would be in Python…prototype it there; crowd-enthusiasm might drive it into trunk. Main problem with Python is I don’t think it can get deep enough to create a new editor. The big 2.5 refactor was supposed to provide a power platform for things like new editors but I have not seen anything…maybe tabs?
I tend to waste a lot of time building tools instead of using them, so this idea is really tweaking my interest (like I need another project :rolleyes: ).

crowd-enthusiasm might drive it into trunk.

Did not work in the past with various attempts. And nothing has changed since then. When you want to change the UI, then nothing else is left but a fork. Best of luck :slight_smile:

and in the past it was backed up with far more than an impassioned post ending in everything ventured but nothing gained. No offense intended OP
Despite the fact the #1 complaint about Blender (from new and novice users) has arguably been about the interface, and surprisingly (to me anyway) there has been support by many established users in the Blender community to leave the interface intact lest Blender suddenly becomes an amateurish software title and no one takes it seriously, and many of the developers apparently adhere to this concern. While I would love to see a UI revolution like we saw from 2.49 to 2.5 (prior to 2.5 I would not even try this software, it made my head hurt to look at it) I don’t see it happening now because likely it would have happened when there was tremendous support behind it not too long ago - and even that was not nearly enough to change the position of a single pixel on the UI.

There is always lots of talk about changing things, but in the end, all that matters is whether someone actually programs it into Blender (and/or gets it into trunk or forks etc). Naturally, a program like Blender is used more so by artists than programmers, so few people have the experience/time to program whatever features. Smaller studios don’t have the resources to have a dedicated programmer and bigger studios tend to use conventional solutions for reasons discussed elsewhere.

Crowd-funding is pointless unless the BF approves of it beforehand or the BF sponsors it themselves like Krita does. I like how Ubuntu’s donation page lists specific area you could donate to, thus indicating your support, although being more specific like Krita would be more effective. You could say the open movies are the BF’s method but smaller and more focused projects might be more successful.

IMHO, the underlying UI abstraction needs to be redone since it is not consistent. In some cases, you must use the context operators versus calling a method through bpy.data.*. From the Python POV, it makes more sense to have the operators use the bpy.data methods instead, but rather they both call the underlying C functions for whatever reasons.

I do wish the documentation was a priority and up to par. On one hand, Blender moves so fast and it’s fun to get all the new features, but at the same time, it requires more commitment to maintaining the documentation, which the few programmers understand best (and thus are the most suited users to write the documentation).

I didn’t hear any thoughts about a BF technical writer. That alone seems like it would fix, well, everything! I know it’s not glamorous and maybe not a lot of support compared to cool new features, but good lord it would be nice…and it would supposedly keep up with changes.

The lack of permanent documentation development just fits perfectly into the current scheme with bad usability and the unwillingness to change this issue. I can’t even blame the programmers here. They are programmers, not writers. And to set priorities is more the job of the boss anyways.

This is the impression I get of the Blender User Interface.


                                               Ultimate Speed Attainable
                                                                  |                                         Blender
                                                                  |
                                                                  |
                                                                  |
                                                                  |
                                                                  |
                                                                  |
                                                                  |
------------------------------------------------------------------------------------------------------  Difficulty in Learning
                                                                  |
                                                                  |
                                                                  |
                                                                  |
                                                                  |
                                                                  |
                                                                  |
                                                                  |


It’s not really that hard to learn, but you do have to try. I’d say leave Ton alone on this matter. He seems to know what he wants and what he’s doing. I’ve been directly involved in User Interface quagmires. It’s not pleasant. :spin:

He seems to know what he wants and what he’s doing.

I highly doubt this part. He is simply ignoring the UI issues away.

The only problem with this statement is how we now have daily activity in filling out the docs. and making it more complete.

The fruit of this new activity can already be found in the official manual, take a look for yourself.

True. There was work done. But the problem with that is that it is still incomplete, and that is AFTER somebody worked at it officially. That’s what i meant with the scheme. It is half finished, and then left alone. Like the UI. Like other usability issues.

Note the little word “permanent” in my statement. Documentation is part of writing code and development. The docs needs an official update with every release, containing all new features and changes. Not just cleanup work for a few months, and then left alone for years again. Give it a year and we have the same state than before.

Good point. Perhaps what is missing is a permanent technical writer. Relying on release notes and crowd sourcing the rest only seems to work for the cognoscenti, and leaves the mass of users struggling. In a way, BlenderArtists is a huge, volunteer Help Desk for Blender.

True. There was work done. But the problem with that is that it is still incomplete, and that is AFTER somebody worked at it officially.

That somebody worked on it “officially” doesn’t mean it gets finished with a snip. This is a big project taking many months to finish.

Note the little word “permanent” in my statement. Documentation is part of writing code and development. The docs needs an official update with every release, containing all new features and changes. Not just cleanup work for a few months, and then left alone for years again. Give it a year and we have the same state than before.

And that is exactly the goal of the new manual - having a good documentation about all parts of Blender and having it updated permanently. This is also one of the main reasons the Sphinx/RST environment was chosen.

Back when I worked as a technical writer for a small software firm, coding and writing documentation proceeded in tandem, so there was at least first draft documentation complete when the software was released. One of the benefits of having an in-house technical writer is that the coders sort of actually have to talk about what they are doing from time to time so it can be documented. Another advantage is that if some function is too difficult for the in-house writer to understand and explain, then maybe the coders will take another look at the problem they are trying to solve.

The current procedure (I think) is for the coder to write release notes that are supposed to be done when the software is released, but these notes are not integrated into the manual, and, since they are written by the coder, often do not have a users perspective: it’s subtle, but users are concerned with what something does, while coders are concerned with how it works. While similar concerns, they are not identical.

@JulianSeverin: you seem to have some background knowledge that you aren’t sharing in this thread. What do you know about this ‘big project’ for a ‘new manual’?

No secret


https://www.blender.org/manual/

@JulianSeverin: you seem to have some background knowledge that you aren’t sharing in this thread. What do you know about this ‘big project’ for a ‘new manual’?

Well this: http://www.blender.org/manual/ And you don’t need any background knowledge, this is an official and open Manual-project. It also contains documentation for new 2.75 features such as Multi-View or OCL rendering.

Also note that Greg Zaal was hired by the BF for 3 months to work as a Documentation Coordinator during the rewrite/migration period of the new manual. Of course it would be nice to still have him on board to do this, but we shouldn’t forget that this work would have to be financed by the BF/BI somehow, meaning less people for actual Blender development could be hired.

So in the end it’s once again the developers and some volunteers who have to do all the work. Since writing documentation is something everybody can do, it would be much better to actually get involved with it and be helpful instead of just pointing fingers at the BF and blaming them for not hiring people to do this (or similar behaviors).