2 ms·
While I don't have time for an extended debate at the moment... The problem is thinking of software as a good (product). Software is not a scarce resource, so
by pdkl95 11y ago
While I don't have time for an extended debate at the moment...
The problem is thinking of software as a good (product). Software is not a scarce resource, so it is foolish to use tools such as capitalism (or other economic systems) as the model for the creation and distribution of software. Capitalism is very useful for optimizing the allocation of a scarce resource, but it doesn't apply for things that can be reproduced for free.
A better model is recognizing that software development is a service. We are moving quickly into a future filled with automation, data analysis, and everything we call "AI"; the demand for software development will be increasing dramatically. Just like today, most of this development will be for specific business needs, which are rarely useful directly to outside the specific use they were developed for.
Like plumbing, there will always be people who need software that is customized for their current situation. When you hire a plumber to install the waterworks for a new building, you don't expect them to develop their own type of pipe fittings; they use standard parts. Similarly, a business that has software needs should expect that the software developer they hire or contract will save time, money, and bugs by utilizing existing software that is available in the commons. The remaining bits of software that are necessary to customize the standard components for their specific needs are - by definition - not a "product" that is useful to others.