The problem with thinking of GNU/Linux in the same way as Windows and Mac OS X is that it assumes a world where proprietary software is the norm, or is okay. I believe that is isn’t okay, and that it is harmful.
The problem with thinking of GNU/Linux in the same way as Windows and Mac OS X is that it assumes a world where proprietary software is the norm, or is okay. I believe that is isn’t okay, and that it is harmful.
It is plain impossible to live from selling desktop software with source code available, without having others in the first week come around and re-bundle it, Sourceforge style.
A lot of desktop software is commodity stuff — mail clients, office suites, browsers, photo editing and the like. But there are some areas where we need to be better, such as video editing.
I love FOSS, but people like you (yes, "fundamentalists") can't deal with the idea that some forms of software are probably better as paid transactions between well-informed parties. The laughable state of open source office suites and any serious competitor to most of Adobe's products suggests that this model has its limits.
The thing I zero in on here is that I have literally zero problems paying for software. But I am wary of purchasing software that I don't get the rights to build, modify, and contribute to.
My worry with software like this is that vendors come and go, and people get their workflows destroyed because the software can't be "saved" when the business is gone (yes, when, not if! always plan for that "exit" that ruins people because the products are gone).
Would I prefer the software to be FOSS? Absolutely. I am also absolutely willing to pay for FOSS, and a good number of Linux users are too.
I'm even willing to take open-core style models if it means there's some FOSS code release, as much as I don't like the model.
I use a mixture of FOSS and proprietary software all the time, not because I want to, but because I _must_.
And in my workplace, FOSS solutions (even ones we pay for) are infinitely preferred over proprietary ones. Desktop Linux support is a must, as well.
I do think that vendors should have to put things into some form of shared-source or open-source escrow (possibly shared as they might not have IP rights to open source everything they've done) with a kind of 'dead mans switch' arrangement (i.e. you walk away without updating or responding to bug fix requests, you trigger escrow).
I'm perennially concerned that the fundamentalist attitude to proprietary software is suppressing innovation in some areas: especially complex desktop software where there is (a) a heavy requirement for the kind of tedious UI work that FOSS projects clearly don't bother to do and (b) where most or all of the product is "right there in the code" (i.e. once you have Photoshop, you can go to town and edit stuff, and you're not really all that dependent on having access to some other product or service which can be monetized).
The attitude reaches its most extreme in software tools. Best expressed by Andy Gocke with his great tweet: https://twitter.com/andygocke/status/1017509689695715328
'Developer tools seemed like a good industry to be in, "sell shovels in the gold rush" and all, but it turns out developers prefer to dig for gold with their teeth.'
Whatever I wrote about the limits of "FOSS" software can be multiplied by a solid order of magnitude for "free only".
The most popular OSes are proprietary:
* Android (almost useless without the Google stuff, plus 99% of Android apps are unfortunately proprietary)
* Windows
* MacOS (I know about Darwin, everyone uses MacOS for the proprietary integration bits)
An open source GMS implementation exists, and might gain traction with the recent Android/Google antitrust lawsuit in EU. Have you tried LOS + microG recently? Have you seen the utter garbage frolicking around on Play Store? Quality, not quantity. At least with F-Droid, you know what you're getting. Same with Aurora, as it has Exodus support.
For the core things the basic, inter-operable, standard should be fully open and free. This includes protocols, data formats, reference applications/servers/clients and anything similar.
A user should not need to pay to communicate. This is a natural right and one of the cornerstones of a free society.
However I don't mind proprietary products as OPTIONS that allow someone to do the above better or more effectively (while still following open standards for external APIs!), or for 'toy' tasks like games or fun. That's a premium feature or recreational extra.
For the logical retort about who should be funding the development and maintenance of the core items? In some cases (hardware APIs) manufacturers might want to form standards bodies (E.G. Khronos maintains OpenGL and Vulkan) and provide open standards. In other (most) cases governments maintaining civil infrastructure should contribute. I would love if every university had a course where existing code repos were examined by students for completeness and safety and the students actually signed off on their reviews and maybe even submitted patches (or at least bugs if the answer isn't obvious/requires architectural changes) for flaws.
Why should software development be any different than any other profession where people get paid for their work?