The BDFL software model; pros vs. cons, is it worth continuing for Blender?

Ever since Blender became Open Source, the application in general followed the BDFL model, or “Benevolent Dictator for Life” with Ton playing that role. The question would be, after more than ten years under that model, is it worth to keep Blender development under it or do we need to shift to a completely new model based on the ones of some of the newer FOSS powerhouse apps. like Krita?

Current; BDFL
–Possible Upsides::

  • Very structured and organized development
  • Clear roadmap and a clear vision
  • Easier to get big refactoring projects done when needed (due to more insulation from a pessimistic minority)

–Possible Downsides::

  • It’s possible it could mean users being ignored or user complaints falling on deaf ears, because the opinion and direction of the man at the top surpasses all others
  • The word ‘Benevolent’ can be a relative term depending on the paradigm set by said dictator, some might even see him as malevolent ​and a blocker instead
  • It’s not impossible to make decisions that torpedo the app. altogether (and the community has little power to prevent it).

Alternative; True, community driven development
–Possible upsides::

  • Users feel like they’re part of the process and in turn feel like they’re co-owners of the software
  • Potential for very fast development
  • Possibility of widespread adoption by professionals if done right
  • User gratification when his suggested tools get into the program

–Possible downsides::

  • Certain features and pieces of functionality can get caught in limbo due to rancorous disagreement within the community
  • More difficult to judge with foresight the possible implications of certain functionality down the road
  • Possibility of upset users when certain changes are unpopular among the minority
  • Major refactoring projects can become a little trickier if the community has few among them who fully understand things from a developer perspective.

Thoughts?

You are discussing this in the completely hypothetical, right? There isn’t a snowflake’s chance in hell that Ton is going to leave his role voluntarily and there really isn’t any significant support for setting up an alternative to the Blender Foundation he leads.

The key developers like Ton, like being paid by Ton, and/or really don’t want to see the Blender community torn in two. Ton likes developing Blender, one assumes he likes the power he wields over it’s progress, and is the figurehead for it’s development. The Blender Foundation which Ton leads is the destination for 90% of Blender funding, is the source of 90% of funded Blender development, and is the primary entity to which grants from the government, Google, even Epic go to.

I’m not terribly thrilled with some of Ton’s decisions myself but I’m not exactly sure what the final goal of this thread is. Let’s assume that by some weird quirk of fate, fortune, and black magicks you get universal agreement in this thread that Ton needs to step back and let the community take the reins. What exactly will you do then? Ton isn’t going to just leave the position he’s worked nearly twenty years on because the community thinks he should. I honestly wouldn’t expect that of him (or anyone else) either.

Like it or not, the only way that the primary distribution of Blender is pulled from Ton’s control is from his cold dead hands or by some alternate distro somehow appealing to everyone enough that it attracts the funding, developers, and focus. If you want a non-BDFL model of Blender development, you’ll have to start that alternate distro and do something amazing to attract investment, user support, and (even more importantly) skilled developers to push it forward and maintain it. It might suck, but that’s the reality of the situation.

Not really,

What I would like to see, is a system to pick and choose what parts of blender you want, click download, and it compiles when it lands.

this would make anything possible.

Yeah, and it is not going to happen this side of 2050. Do you have any idea how much effort that would require? :eek:

At least with FOSS, there’s always the option of creating a fork project if all else fails. That’s why there’s at least a dozen flavors of 'nixes in terms of OS. (Not everyone agreed with Linus Torvalds.) Of course that has it’s own problems, when side projects take off in their own direction it may take away development potential from or lose compatibility with the mainline branch. Then again sometimes you get something like Libre Office vs. Open Office where the new branch may supercede the old one in capability or reliability.

However if the main development is good and solid, the hard part would be finding a community of users and developers willing to start a fork. (Yet it still does happen when trying to speed development to a very specific featureset that isn’t getting enough attention otherwise. Relating to Blender? I could see it happening with either the VSE or some specific uses of physics simulation.)

Maybe not what you’re looking for? But at least it’s possible if enough people get on board, which is unlikely/impossible with closed source and/or commercial software.

My opinion is that the dictator model is better if the dictator is competent, and look at blender right now, its clear Ton IS competent. A organized way with a kind of boss is better than an anarchic development. The anarchic development can be faster, and fancier, but as OP says, the hard stuff would probably never be done.

Oh Brother, the natives are restless again. I’m guessing Ton stick a few needles through some people’s balloons, I will take a guess it’s coloured wireframes. Also by the way I love how you think Krita is new app.

I honestly think the BFDL model works best over a “community led” model. I’ve worked for companies that designed by committee, planned by committee, and eventually went bankrupt because of the committee. Any (successful) organisation has to make hard decisions and, frankly, I’ve only ever seen committees dodge them &/or seek someone to blame for them. Dictatorships work, which is why companies have CEO’s rather than just leave everything to a vote from the Board of Directors.

That said, one of the things that make dictatorships work is the fact that the dictator has to own their decisions. Claiming to be powerless when they’ve made decisions that have proven unpopular is the very kind of dodging of responsibility that causes committee-led development/organisations to fail. Being in charge comes with some hefty powers and, like the Spiderman saying goes, that entails some hefty responsibilities too.

I honestly think any talk of changing the leadership or organisation of Blender is a waste of time. There is no “CEO in waiting” should Ton step down. There is no competing distribution. Hell, there isn’t even someone the community could press-gang into taking on the job. Yeah, there is some animus about some of the decisions made but no-one is willing to take on the challenge of setting up an alternative to the new Blender Foundation and Ton isn’t going to give up being in charge of the existing one. You don’t spend nearly twenty years setting up & building a company only to voluntarily step aside because the community asks you nicely (or even harshly).

Well Ton wants it to be a theme based option so it is not off the table.

Blender is one of the few apps that wants to be able to theme every objects and that collides also with the colored wireframe
so it makes sense to push it into the theme area.

I hope in the end it will not turn into random colors.

But it feels a little silly because giving objects a unique wire-color or a layer a color is quite common in nearly every 3D app I work with to structure your design.

I think we have to admit that it is a rather odd exception that Ton stands in the way of a particular feature like “colored wireframes”. He usually doesn’t deal with these kinds of things at all, which is mostly a good thing.

Ton does a tremendously important job as a producer, I think that these design tasks he occasionally busies himself with are more of a pet peeve. Artists should be able to understand how someone can be stubborn about that.

@Ace, here’s what you’re basically asking:

“Although the current model offers great organization and direction, should we replace all that with chaos and disarray and a slim chance of some happy devs?”

No thanks :slight_smile:
I like the way Ton does stuff. His dedication and vision for blender is really something.

If blender fell to the hands of the common user, blender would simply decay painfully. Hey, let’s upgrade to OpenGL 4.x because it has a higher version number and because we want to kick away people who do not use monster GPUs even though it doesn’t do anything that 2.1 can’t do :smiley: Hey, let’s remove BI because cycles looks cooler :smiley: Hey, let’s turn the UI into a maya clone :smiley: Hey, let’s… please

I can’t see how an open source project of the complexity of Blender could work without having a good leadership, Ton managed to keep the Blender project floating and continuously developing since its open sourcing for more than 10 years.
And still now Blender is growing strongly.

Even if i would like Blender to focus on different areas or features, in my opinion Blender survival and continous growth even nowadays is just enough proof that Ton is very competent for the leader role, i wouldn’t see this to change at anytime.

Yes, it’s worth continuing. Blender is one of the most organized Open Source projects out there by far. Especially for graphic software. I don’t always get my way with Blender on the details of development, but overall I think it is heading in the right direction and makes big gains year over year.

The part of this thats interesting (to me at least). but completely glossed over.

What does community driven development even look like?

  • Is it complete anarchy?
  • Would there still be module owners?
  • Could the community vote the BDFL back in? (or some leader - similar to Debian)
  • What happens to the BF?
  • Would anyone currently working for BF, loose their jobs and have to get community funding too? (crowdfunding)

There are practical implications such as

  • Who fixes bugs, are they paid?
  • If someone spends 6months working on a feature, how does the community choose weather to include it or not.
  • If there is a disagreement between devs… how’s the decision handled?

So I’m not sure what replacing the BDFL with a community really means?

Well, another idea to posit would be to just revise the BDFL model to include more community elements.

Like the BDFL himself might veto a feature, but if there’s enough of a voice in the community and a compelling enough reason, it can be considered overridden and committed to master despite his opinion (offering a small, but not complete loss of power and influence over development).

The vast majority of users do indeed support Ton as the project leader, but some of them also think he has too much power so as to (at times) make them think their opinions are worth nothing (unless he agrees with them). A project should never make a user feel like his voice is nothing, and some of the more critical users here (which include VFX professionals) think the Blender paradigm is doing exactly that.

By no means am I meaning that “BDFL” is broken beyond repair or we must do the community-driven approach, that is why I listed pros and cons to both ideals.

Hold on.
Could you be more specific with the idea from the initial post first?
You raised the topic (a reasonably device one, questioning leadership), If we have to defend a BDFL’s role in Blender, its only fair you show some rationale for whatever alternative you suggest may be an improvement.

The thing is, I don’t think you can have a BDFL unless they get the power Ton has. They need to be able to make unpopular decisions and they need to be able to do it over the cries of the community. Otherwise they are just a figurehead for the community instead of a “dictator” who can shoulder the responsibilities of being such.

As such, I personally don’t think Ton has too much power. I think he is misusing that power in some areas and isn’t shouldering the responsibilities of that power. When the community thinks a BDFL is using their powers badly (and there is sufficient animus it becomes an issue) the dictator should explain the reasons they’re doing what they’re doing (i.e. get the community on side), alter their decision based on the community’s feedback (i.e. move toward the community’s side), and/or simply shoulder the burden of being the BDFL & able to make the decisions no-one else can. It can suck, but that’s the price of being a project manager who gets the final say (for large & small projects/organisations).

It belittles the BDFL’s leadership (& the people that support the project) to just ignore the community when it disagrees with you, publicly pretend you’re powerless, and yet still exercise ultimate authority over the project to get your way on even the most minor of changes. It’s not a matter of whether there should or shouldn’t be a dictator in charge of the project - it’s a matter of whether the dictator is or isn’t benevolent.

I was only mentioning it as one alternative, an alternative that might be one of many potential directions under which to manage an open source project., the reason I chose to use that though…

  • I know that the Krita organization for one thing is using community-driven development paradigms by way of having a list of potential enhancements and having the community give votes, they more recently are putting together a new version with the release logs including exactly the most voted for items on the list.
  • Even Autodesk, a company that’s sharply maligned by Ton himself, is now using a community vote system and is actually acting upon it by implementing the most requested features, Ton really doesn’t have a leg to stand on against Autodesk, nor does he have the right to criticize them if people don’t see him as any better or even worse than Carl Bass (the company’s CEO).
  • Unreal has taken community-driven approaches to a completely different level and, with a bit of organizational support from Epic, the users are actively deciding on the roadmap for the Unreal 4 engine by way of an elaborate voting system powered by Trello.

People sometimes like to say they are using FOSS because they want to get away from ‘evil’ corporations that fleece their customers mercilessly, but the reality is that sometimes, that corporation is actually more pleasant to work with than the (alternative) FOSS organization.

Actually, I think that the current model is great, but there needs to be fail safes, so some users are not alienated,

for instance the game engine dev patch tracker.

I do not have any problems with Ton, or the leadership…
I just wish there were more help for orphan lil old game engines.

@BTolputt

There is the potential for BDFL to make a bad judgment call, We’ve talked about this (informally over lunch),

That perhaps we could give Blender project admins veto over the BDFL on any decision, suggested by Ton infact.
The reason we didn’t push this further is … development is more fun then writing policy? … or we just don’t disagree on big-issues often.

@Ace Dragon,

I don’t follow Unreal or Autodesk much, but you imply that Blender doesn’t listen to its community,
Just because Blender doesn’t follow popular opinion on every decision, doesn’t mean we don’t listen at all.

Im sure Autodesk won’t listen to their community if it goes against whatever CEO/marketing-department… etc feels is best for their bottom line.
eg:
http://mayafeedback.autodesk.com/forums/160514-ideas-for-maya-forum/suggestions/2946113-open-source-completely-fbx-just-like-alembic-and-o (336) votes.

Its possible to have the appearance of listen to a community, while really doing what you would anyway.
We could do this too! - I’m not sure it would help so much, and it takes time to run and set up.

We do have www.blenderstorm.org. why didn’t this work? it was setup by the community for the community… and look what happens.

We could for example, fire a developer, hire a community manager, and have them fulltime manage a site like blenderstorm, we could show users, saying “Look, we listen to the community”.

…while half of the projects here remain unfinished

Its not like we are running out of important projects to do, which we know the community wants done.