Improving dev. retention; What can change so Blender can hold onto developers?

Ace go draw stuff.

It doesn’t even sound like Blender Institute has a project manager at this point

Ton’s been busy keeping a lot of balls in the air so he said in IRC today…So I nominate that ugly sheep thing from the last open movie…he’s quite talented supposedly! He can tie a knot with his f’n hooves! ; )

Warning: If you are offended by words, please replace shit with s’t and fucking with f’n in the following post.

If you just ignore what has been announced in the past months, you could for sure get to the conclusion that the Blender Institute has no project manager. Let’s face it, who gives a shit if a stupid project manager gets several companies to pay developers for a significant amount of time to implement stuff this community has been looking for? It’s great and tremendously important that people are pointing that out in this forum, even if they don’t know how to use the internet to be informed.

On the general subject of what we can do to encourage devs. to remain in Blender development longer, can we start over on this subject?

I admit my approach to the matter really bungled what could otherwise be a legitimate discussion (as some replies have pointed out), so I don’t think this exact thread is the best fit for it.

Like I said, look at it, laugh at it, shrug your shoulders and know peeps are busy, movies are being made, put your nose to the grind stone and work along side the rest of us that do things rather than say things. : ) Have fun and eat lots of ice cream! I’m going for an orange cream shake myself in a moment here…

Blend ON!

Let’s get in on track again. Fweeb mentioned this in the 2.8 thread:

Not a bad call for indies/freelancers, but I think a better strategy would be to get developers hired at the small-to-midsize studios that currently use Blender. This model works very well for other open source projects (e.g. the Linux kernel). It keeps the Foundation lean while at the same time fostering development that’s driven by real production needs.

As mentioned by others, subscribing to the Blender Cloud or donating to the Blender Fund help too.
It certainly differs whether you are talking about paid or volunteer developers. I believe that having paid developers can help for sure, because there is some constant progress going on, which I personally find motivating when working on a project.

I am not sure what @Fweeb exactly tries to say with the comparison to the Linux kernel. In my opinion Blender and the Linux kernel are very different when it comes the companies using them. Regarding the Linux kernel, there are lots of companies that are interested to make sure their hardware or better the drivers for their hardware are well supported. Or companies who had to make adjustments or optimizations to get the kernel working more optimally for their environment, server farm or product they are selling and they want to be sure that they don’t have to regularly updated their patches, they may have a strong interest to have it included in the official kernel.
What I want to say with this is, that there are many many companies with a direct interest to contribute and they often need to have full time developers to even being able to use the Linux kernel for their needs.

We don’t see this kind of effect with Blender. Even if they rely on it for their daily use, it is simply not necessary for them to hire expensive developers most of the time. And usually if they have to, it can very likely be solved with a temporary Python developer. They most likely don’t see the need and advantage to hire a full time Blender developer and honestly, even I am struggling to see how they could justify that economically.
There are very few examples in Blender where you can actually see the benefit of that. One of the visible examples that I remember was that @JulianSeverin was hired and did some cool stuff. And from time to time, you can also see that Sebastian König is actively working with Sergey on the camera tracking.
During the open projects, there are always lots of improvements being made. Lots of improvements are being mentioned e.g. during weeklies, but it is often not prominently mentioned. I think during Gooseberry and also during Glass Half, a lot of valuable improvements were made for the animators. However, that kind of information is not very prominent.

Small and mid sized studios can hardly see the benefits of hiring developers. I think a good step to at least get them closer to hiring developers or contributing to the Blender Fund would be to show them some relevant examples. I think, this is something that might even be done by the Blender Institute. I am sure they will need some small fixes or features for the Agent project. Even if it takes a some time, it might be worth to keep track of how a small, but practically very important feature, can be realized when artists have the possibility to get in touch with a developer in their team.
If there were several of those examples easily reachable on blender.org, it might help to promote this idea to small and medium sized studios.

I have retooled the first post with the intent to have a legitimate discussion, no rumors, no speculations, no mention of specific developers, just general discussion points.

As far as I can see, that’s exactly what my previous post is about.

So far, there’s a number of things to address on this subject…

  • Is the whole issue something that’s easily fixable with more development fund subscribers?
  • Developers after a while get worn down after working on the codebase for a while, is there something that can be done development-wise to slow that process down or even prevent that? Could the 2.8 push help alleviate that by allowing devs. to rip out messy code rather than try to work with it for compatibility reasons?
  • On that, has the Blender development paradigm been too focused on maintaining compatibility? By no means do I support breaking everything to the point seen in other apps. like Unity, but more in the vein of replacing and overhauling systems that are obviously broken in design (an example for 2.7x could’ve been keeping compatibility in animation and rendering, but replacing the particle system and the hair system).
  • Is there changes that can be done on the community side to encourage developers to stay, such as improved relations and generally making BA a better place to get feedback from (and it has been shown that relations with users can have an impact on developer passion)?
  • Is is possible that the notion of uncertainty contributes to the wearing down process (as in, you work on something for months without knowing if a single line of code will make it into master)? Could there be more clear communication so as to know if a project is worth pursuing (such as if a proper implementation requires deep changes in its respective area of Blender for instance, which would suggest that it should be shelved for a later date). I know the BF can’t just accept everything that comes their way, but it would be better if a project was found to not be worth pursuing early on as opposed to when it gets to a completed state.

In short, yes, job security might be a contributing factor, but another thing to take into account is the “wear” factor and how that in turn is impacted by various facets seen throughout the entire Blender ecosystem (from the behavior of the userbase to the attention required by the Open Movie projects).

MMMMMMmmmmmmm… I just can’t figure out how to get the whipped cream mixed in before I end up slurping half of it first. But yummy! A blender dev’s reward, tru dat! Good music to work to also helps! ; )


From my perspective(hopefully obviously…)
*Give BI/BF more money? == happens all the time == similar results as before. Helpful of course, but falls short of unlocking the prize…

other companies devs helping Blender? == vRay does, others I know do or have tried == “under consideration” per blender core devs, so we still fell a bit short on that also but not for the lack of effort by other company devs…which are pretty talented people from what I have experienced.

–temp devs, lots of valuable improvement, showing relative examples, fixes or features, artists in touch with dev team == got all that already and have had it, I’ve lectured peeps in #bc on Sunday dev meetings for 3 years on the short-sightedness of plumbing fixes/spaghetti code hacks and we’ve had good participation with module owners and stakeholders listed on said page == still helpful of course, but still falling short of releasing the genie in the bottle…

*similar statements == similar responses == similar results…

So let’s pick a few different spots on this genie bottle to rub to see if we can get some different results…the opposite of plumbing fixes/spaghetti hacks according to some dood in #bc named JTa is to make architectural changes == we got that in progress with viewport project, Lukas outlined nodes/modifiers/storage/particles for us already with architectural changes addressed(Yay Lukas!), somewhat of a list is available at BConf hopefully for some other things like duplis to be addressed, mont29 has cleaned up IDs, Sergey has the depsgraph moving forward, looks like Ton wants to scale down 2.8 though to something more manageable == some key architectural changes are finally being made so there is some progress on that front, still kind of beating around the bush though but fixing some of the thorny parts for new devs so that is looking better already so the 70 year old is now in the 40s. Work still needs to be done clearly addressing and documenting needed architectural/inter module communication/control loop changes so we’ll see what comes out of BConf 2016.

Hmmmm, ok off to another spot to rub… Hey, let’s have a new developer assistance program! That’ll work great! == Okies, fine, we tried that two times and it crashed and burned like the Hindenburg! ;p == keep looking…

How about this spot? It looks familiar… How about we have BF/BI be more transparent about how money is spent to attract the hesitant donors thus increasing donations and throw more money at the issues plus we can back off on monetizing FOSS because experts in the field say that causes competition and kills collaboration == HA HA HA HA HA HA HA AH AAAAAHHA AAA COUGH COUGH COUGH GAG… == I’m a bad comedian, I laughed at my own joke and almost choked myself out over that one… ;p

So let’s keep looking at spots to rub… Oooo, I found a spot with patina on it… like other successful FOSS projects make a web platform that is objective for new and existing devs to identify parts to work on and collaborate on, clearly lay out architectural goals, provide feedback with checks and balances, reward and promote new devs objectively according to quantifiable and qualifiable contributions, bla bla bla! == some dood in #bc named JTa was working on that and reporting back for a while, I wonder why he stopped? We should ask him because he seemed to be making progress == others are succeeding with this so why is blender not?

Hmpf! Well we need more devs but we can’t seem to attract really qualified devs or keep enough of the aspiring devs that show up…there have been several in the past few weeks of those btw…hmpf! There was a self proclaimed kernel dev that wandered into chat and complained about his cmake patch getting rejected and that the core dev who dismissed it filed a lesser quality patch…a passionate discussion(euphemism) ensued because the prospective new dev felt offended and he has not been seen since because he left unsatisfied feeling that he was wronged and that the patch issue wasn’t corrected plus his knowledge on the matter was not validated…

This “we need more devs/money and everything will be better” seems like kind of a chicken and egg problem…we can make things better with more qualified devs and more minion devs…but we can’t seem to keep the devs that wander in or satisfy the really qualified devs that could be of tremendous help. Occasionally an aspiring new dev has stayed, Angavrilov for one recently. He seems to be making a dent plumber wise but not architecturally yet. Thanks Anga! Hmmm, well industry is helping out with sponsoring devs and loaning devs…so maybe that will be improving some and will help architecturally plus hopefully sooner rather than later. We did get the nice split kernel work from an outside AMD dev iirc.

How to attract and keep new devs? Well walking away from monetizing to increase collaboration is not an option that will be pursued. A new web platform specifically addressing managing devs like other successful FOSS platforms has been proposed but has stalled. (Don’t forget we need to ask that dood JTa in #bc why that is…) According to our quantifiable and qualifiable link above, which I think can also apply to devs, part of the answer is:

When conducting user experience (UX) research, both qualitative and quantitative research are needed to understand where the problems are, how to empathize with the end users, and propose solutions that ease their pain or create moments of delight and surprise.

Then they answer and give a clear plan of action later in that article:

Guessing loses market share and kills customer loyalty. Ask them what they want and take the further step to find out why they feel those things will alleviate their pain.

Soooooooooooooo, whew, I need to take a breath, this has been a long winded post…deep cleansing breath Ok… So according to this article/author we need to ask prospective new devs what they want and listen to them and give them what they want within general consensus reason. We need to find out what their pain points are and address them.

To do this hard decisions may need to be made in light of the resulting answers. As a result changes to the ways things have “always been done” may need to happen. Those are hard changes to make…and who is going to make them? Is Blender a democracy of a FOSS project to where its common citizens can and will bring about change or improvements? Not according to multiple core devs and this has been openly and repeatedly stated.

Is Ton going to ask and go out and get these answers and make any hard changes on our behalf entrusted with our passive assistance and support? shrugs and slurps on his orange cream shake Are we as a non democratic bound FOSS community going to bring about these changes via discussion as often as our BA/troll crazy train goes off of its tracks?

Some pundits say it’s all about asking the right questions? Should we ask more questions as we rub the genie bottle in hopes to find the right ones? Should we dismiss the questions from the article quoted “Qualitative and Quantitative Research – A Data Dynamic Duo By Britt Hudson” because they may lead to hard to implement decisions? Should we come to a consensus on the questions ourselves without pundit guidance and present them to our BDFL in a unified way thus making a statement “the community has spoken!?”

Ooopsie, I went on so long…what was the original question again? takes another slurp of his orange cream shake

Speaking of genie in a bottle…I couldn’t resist! Dove Cameron - Genie in a Bottle (Official Video)

less talk/writing!
Don´t bully developers into forcing them to correcting those tabloid rumour slander sensationalist writings.
It gets on the nerves!

Developer time especially unpaid one is sparse so stop stealing their time with mass flooding of postings etc.
create more ART! show them devs that their code is being useful

use the Blender conferences to when the time is right, politely bring up questions wishes etc.
do not harass or annoy developers, they are humans like you.

It could just be that Blender is not a dream job compared to many others jobs. Also, I think some people have a kind of idealism connected to open source which I’m sure no developers have, because on this level money is the most important goal for a developer. That’s why you never hear developers criticize these projects, even if it was run by a crazy dutch person who thinks right click select is the way to go.

I can see that. The biggest invention in Linux kernel is the way it was organized almost from the beginning. People around the world could join and participate. Not just anyone. And not just any work. Torvalds and his companions use great accuracy, what is accepted and what is not. On drivers the comb is not not tight. The type of collaboration now days is very common, but when Linux was born, it was non existent on that scale. One point is, that if somebody participates with developing kernel, it must be done on the terms of Torvalds.

Would you like to tell me, what happened with Grease Pencil v2? Was it really coded by Blender foundation money? I think that is the latest example.

Not every feature is developed by Blender Foundation or Blender Institute money. There are lots of volunteer contributions as well. I don’t know who developed Grease Pencil v2 and whether that person was working for a studio or was supported by one. Even if that sentence alone looks like I am making an absolute statement about small and mid sized studios, I hope it is clear from the context, that this is an assumption that I am making.

The majority of open source software is developed, directly or indirectly, by corporate money these days. Sure, there are still lots of individual developers who are scratching an itch, have a need, whatever… but that’s dwarfed by the volume of open source work that is paid for. And it’s the individuals who fade in/out the most as they have no reason to stick around once their immediate need is satisfied. The Linux kernel is the biggest example of that in the sense that you have money in the form of full-time developers funded by Red Hat, Intel, etc. The same is happening with device drivers, infrastructure, Firefox, Gnome, major productivity applications etc. And in the end, I expect we’ll see the same thing happen with Blender (if not, it will happen with whatever replaces it). Passion and interest fade or give way to other priorities, paychecks keep people around. Ideally, you want to be giving the paychecks to the people who have the passion and interest as that’s the best possible outcome as it will help prolong their participation and they really are the people you want to stick around.

We’re starting to see some of it. Tangent Animation is sponsoring 3 full-time developers for example (read the section with the cartoon dog). On the other end, Pixar, Sony, Disney, and others Open Source their tech. If Blender is used in more studios I could see an ecosystem like Linux development popping up.

Of course getting Blender into more studios would require acknowledging/addressing issues that prohibit veteran artists from using Blender in the first place. We still have a bad habit of disregarding outside criticism as haters and then pretending like we don’t know why it isn’t used more.

The majority of open source software is developed, directly or indirectly, by corporate money these days. Sure, there are still lots of individual developers who are scratching an itch, have a need, whatever… but that’s dwarfed by the volume of open source work that is paid for. And it’s the individuals who fade in/out the most as they have no reason to stick around once their immediate need is satisfied. The Linux kernel is the biggest example of that in the sense that you have money in the form of full-time developers funded by Red Hat, Intel, etc. The same is happening with device drivers, infrastructure, Firefox, Gnome, major productivity applications etc. And in the end, I expect we’ll see the same thing happen with Blender (if not, it will happen with whatever replaces it). Passion and interest fade or give way to other priorities, paychecks keep people around. Ideally, you want to be giving the paychecks to the people who have the passion and interest as that’s the best possible outcome as it will help prolong their participation and they really are the people you want to stick around.

Of course getting Blender into more studios would require acknowledging/addressing issues that prohibit veteran artists from using Blender in the first place. We still have a bad habit of disregarding outside criticism as haters and then pretending like we don’t know why it isn’t used more.

These last two posts are really spot on. Much of this thread has been on spending money to retain developers, an alternative might be a focus on trying to get Blender in larger studios and getting open source contributions from there. Of course, this may lead down some GPL rabbit hole… but more to the point, we’re seeing plenty of large studios willing to contribute open source tech / resources. Maybe there’s a discussion to be had as to how Blender could benefit more from that, rather than Blender Institute getting the money for a few more devs.

For me, it is a huge difference whether a studio is sponsoring developers compared to hiring them directly. Sponsoring happened in the past as well and don’t get me wrong, that’s a really great thing. Blender has been around for a long time now and even if it is being used more by individual professionals and studios, there are very few of them who actively contribute to Blender over a long time period, contrary to e.g. the Linux kernel. My hypothesis in this thread is very much, that companies who contribute to the Linux kernel can easily see the benefits of that, while this is not that clearly visible for studios and how they might profit by having their own developer to help them in their daily business.
The Blender Institute is in the position that they usually have at least one developer. I am closely following them and it took them some time getting used to working closer with the developers and working with them on different kinds of improvement. They can now clearly see the value of having a developer. Do you think that other studios are aware of that?
My biased impression is that they don’t see the potential of that. And I believe that it might help Blender overall to get more involved developers, by showing other studios with some actual use cases how they could directly profit from hiring developers. Let me clarify that I am saying that from an outside perspective, without being in this industry!

Let’s pretend that small and medium sized studios were hiring developers to support them. It is very likely in my opinion that the development would be more driven by practical needs from professionals, which could help tremendously from my point of view.