The issue of Open Source Funding and why large companies don't pay their rent
tl;dr: - One of the benefits of open source code is that large companies can share in the benefits of transferable knowledge - Compensation is not influenced as much by individual skills or replacement costs as popular knowledge suggests, it is set at a macro level - College towns and industry hotspots get higher wages so as to attract the expert competition as well as apply move pressure from outside nations so the local talent there doesn't create the next big thing - Improving the funding prospects for large successful projects creates power centers outside of the traditional commercial software industry which creates the "wrong" incentive" for high performing talent to work outside the FAANG+ structure and potentially undermine them.
The longer form:->
*The Industry reaction to Log4j* : I've been watching a lot of really intelligent senior people at large firms in the Bay Area react rather strangely to the ongoing Log4j bug. The developers behind the logging library themselves were sadly under the pump and receiving some pretty bad "feedback" on twitter and elsewhere while trying to figure out a fix for the issue.
The general tone of people who are director level or above in the industry seems to be that this is "Not an open source funding issue at all" and that "This issue could not have been prevented if the devs maintaining the code were paid". . .well, hang on a minute.
This reduces the argument to a rather foolish strawman where we're supposed to debate the benefits of paying a salary to one or more devs. This is not what anyone means by Open Source Funding. A significant portion of software developers' compensation in the industry is tied to variable financial products such as restricted stock units or profit sharing/ownership agreements in the case of firms not listed on the public markets yet.
The large firms also make available to their devs, armies of lawyers, PR professionals, QA, testing and operations folk to help manage situations such as the one we're witnessing playing out with Log4j. All of constitutes compensation "In Kind" . .. the free food, the insurance, the laundry, everything that acts as a safety net backstop to allow the developers at these large firms the luxury of not having to sweat the trivial and instead focus on what they do best.
*Compensation as a mechanism to exert move pressure* : Compensation in the industry is decided more at a "Macro" level rather than something that's directly a factor of an individuals contribution or skills. What this means is, it is a mechanism the industry uses to price the value they place on a combination of : Location, desire to reinforce competitive concentrations of skill levels next to each other, desire to reduce the incentives to directly compete through an entrepreneurial undertaking instead of employment and others.
In short, there is very little leverage a regular individual developer who is not an outlier can exert on compensation ranges. These decisions are made strategically by multi national corporations to make it a desirable career move to move to the Bay Area or other such locations that these companies continue to have a strong presence in.
*How Open Source is placed if this scenario were true* : Clearly, companies that have invested in making sure that the talent that can build things that can compete with them are not going to make it easier for that talent to do so while paying their bills and luxuries, allowing them the same worry free experience they may expect as employees. Using open source libraries is necessary to avoid closed kingdoms that devs would not want to work in as it may kill their careers.
2 comments
[ 3.1 ms ] story [ 15.6 ms ] threadApologies if this is not super well written, i'm writing this during travel and English isn't really my first language.
Flawed Assumptions:
#1) Companies are obligated to support Open Source but Open Source is not obligated to support them.
How many times have you heard this? Got a problem --- you fix it --- you've got the source.
#2) Everyone wants to be a software developer.
Not everyone has the time/talent available to find/fix your bugs. It is often only after a problem has occurred that individuals realize there may not be any good option for getting things fixed.
#3) No one cares about stability and longevity --- cause Open Source.
A "benevolent dictator for life" is not a sustainable business model. If Linus Torvald dies from COVID, who picks up his role and carries on? How long will it take them to be proficient?
Companies want/need answers to this for "mission critical" software. By design, Open Source often violates the basic reason corporations have for existing. OSS obviously has a role to play but I would carefully consider all aspects before making my business highly dependent upon it.