Even if you look at industry contributions, this is not actually why code is open sourced.
The individual incentive is to open source code to show the rest of the industry what you have been able to build, with personal returns to you if it actually gets meaningful adoption.
And companies are willing to go along with this because infrastructure projects are not actually a source of competitive advantage and they would rather co-operate on keeping input costs low, and also not get stranded on a tech island with totally custom tooling for everything. You also derive some marginal benefit if the OSS code actually gets used by others since you still control the project direction.
And then separately you have OSS first companies that are hoping that being OSS lets them gain a marketing/sales advantage with developers who care about that.
These incentives remain the same even if there is no meaningful surplus.
Exactly. For individual, hobbyist developers, just showing their work might already be a strong incentive but for profit seeking companies, the motivation to open source their code hinges on tangible benefits like you said. We're developing a digital platform with a marketplace for 3rd-party developers to contribute and make money from their contributions, at one point we had to decide whether we should open source our code, the pros and cons in doing that etc. And we came to conclusion that, in our case, by proving both cloud and open sourced version will definitely help drive more attention to our cloud offerings and attract more developers to provide/sell their own applications on the marketplace. However, we have to keep our focus on our cloud version first and delay the release of the open source version for at least 1 year or until our cloud gets enough traction/attraction. I don't know if this will work out well in the end but we have got to try.
The individual incentive is to open source code to show the rest of the industry what you have been able to build, with personal returns to you if it actually gets meaningful adoption.
And companies are willing to go along with this because infrastructure projects are not actually a source of competitive advantage and they would rather co-operate on keeping input costs low, and also not get stranded on a tech island with totally custom tooling for everything. You also derive some marginal benefit if the OSS code actually gets used by others since you still control the project direction.
And then separately you have OSS first companies that are hoping that being OSS lets them gain a marketing/sales advantage with developers who care about that.
These incentives remain the same even if there is no meaningful surplus.