Suggesting all code should be OSS is orthogonal.
Suggesting all code should be OSS is orthogonal.
I start a new project, for instance to autoclassify documents. Ok users of my code will contributed in code, hosting, documentation simply because they share my similar need/desire. If there is interest there is no need for money, software is not a product nor a thing we can live on. It's shared knowledge. There are no "producer" nor "consumers", only participants.
If we have a single-man-show that say "hey, found me so I can keep the project up" it means that:
- we completely lost FOSS model, transformed to a sort of neopatronage, the erotic dream of proprietary vendors that dream a world of products to be sold and bought;
- the project is already dead not because of lack of founds but because of lack of participants, knowledge, interest.
One reason for that is that many codebases are large and complex, and so even expert programmers won't automatically understand how to improve them substantially without a considerable amount of study. It's likely that many people will need to be paid for that investment, not because they ideologically believe that software should be property, but because it takes up a huge amount of their time and effort that they won't be able to apply elsewhere.
And indeed, when people have empirically looked into some of the larger FOSS projects they've found that a majority of the contributions were made by people who were being paid to make them—again, not because of any ideological aspect, but because being paid for it allowed them to invest a huge amount of time and focus and helped them to be more sophisticated and productive contributors.
(Edit: Just to be clear, I don't think that trying to convince people to use, develop, or procure FOSS instead of proprietary software is bad, or that, if successful, it won't also lead to more resources being applied to FOSS development. However, a lot of those resources will probably be mediated by money.)
On contrary there are other companies that pretend to sell "open" product that are open like a bunker (to name a few try looking for business software from ERP to CRM to DMS etc) and those are not contributed to FOSS. Even if they both pay someone to develop FOSS code and publish it.
I hope to have being able to clarify that point in my limited English...
On complex codebase: FreeBSD codebase is not exactly simple and little, but it live on it own foot since decades, for instance? Emacs, Debian, ... the same. I do not intent that a project must run on casual contribution but simply that contributors must be subjects that need/desire such code so they contribute to it for their own sake like the Intel example above.
If these donations dried up then the projects would suffer. That’s not an outcome anybody really wants.
You seem to acknowledge that companies paying staff to contribute to OSS is ok. Why then is it not ok for companies to provide funding for a specialist to do the same thing?
If project like Django need maintenance the answer is: universities. Universities train students and can easily maintain projects providing not only people but also resources.
FOSS is knowledge, so a thing that need to be entirely public and entirely relay on public. It is ok if a company need a certain software and so develop it, it is not ok to be "founded" like Patreon, LibrePay, PayPal donation etc. We need freedom and participation not charity.