I think this goes back to one of the core tenets of free and/or open source software: the user should be able to know, control, and modify exactly what their machine is doing.
If the source is not available you're just running a black box and praying that it will do what the person who gave it to you claims it will do.
I'm sorry to point out to you but a large set of computing devices are black boxes and it does not hurt their marketability. Cars, phones (the OS running the hardware, not Android), ... the pilot in the passenger plane does not want to hack his planes OS, nor most likely does the mechanics crew.
Practically, lots of people just want to get their job/art project/email/browsing done and do not care about the blackness of the box just as long as it works.
I think one of the reasons RMS got going was that he was irritated that the software from vendors did not work.
The software markets have advanced some what. Nowadays, for any product with a sizeable market it is fairly safe to presume the software works or at least won't fail miserably. And if it does, it's not just the lone consumer but thousands/million others who are pissed off as well. Yeah, crap gets released though.
On the other hand, if you have complete visibility into what your machine is doing and have the ability to modify it at will you can avoid all manner of failure scenarios that are essentially unrecoverable in the black box scenario.
We know people will run black boxes, drink poisoned sugar drinks, support genocidal megalomaniacs, torture others for limited monetary gain and/or endorphin rushes, etc. None of those realities imply that others should follow in the same footsteps, especially when there are workable alternatives that don't suffer from the same permanent failure scenarios.
Civilization is characterized by specialization of people. I cherish the notion that hardware and software should be based on open standards. For day to day work, I just want my gear to work. If it fails, I certainly do not have the time to dig in to the software layer because I have a work, children, housekeeping duties, and a bunch of art projects and higher level concepts I want to focus on.
"if you have complete visibility into what your machine is doing and have the ability to modify it at will you can avoid all manner of failure scenarios that are essentially unrecoverable in the black box scenario."
You presume all software is trivially simple. I can tell you, it is not. A large category of software requires years of specialization to actually grok what is happening.
As an extreme example if I owned a plane I would not like to hack it's software under any circumstance unless I were a professional aeronautics professional, and probably not even then.
Free software should be looked on from the point of ethics, and not from financial gain. Proprietary software is immoral, and that is the reason you shouldn't be building it.
https://www.gnu.org/philosophy/open-source-misses-the-point....
It's one thing to laud the common benefits of FOSS, or the ethical gains of charity. These things resonate with me. But I fundamentally disagree with - and as a proprietary software developer, am alienated by - your statement.
Is that actually what you mean? My day job - making games - is immoral? A daily dose of evil? If so, this is the kind of attitude that puts me off contributing to anything even remotely related to "free software".
Perhaps you're fine with that, but I feel it leaves us all poorer.
(edit: minor improvements to clarity.)
I think the word 'markets' was a bit misguiding in terms of argumentation. I meant "things which bring people added value and joy" and not "things which can be sold for money". Markets encompass both but I was thinking the consumer added-value in this instance.
"Proprietary software is immoral, and that is the reason you shouldn't be building it"
I think taken without any other context this is not realistic.
I think the concept of ownerhip and responsibility are far more important for high quality software for the point of view of short term end user value than openness.
Software has a philosophical and a mathematical dimension. I don't think anyone should be able to own those and that most software patents are harmful in this way. However.
Software is used as an enabling component everywhere. As an enabling component it's added value does not depend on it's freedom or openness, but from it's capability to function bug free and provide the features end users need. As the canvas in the art program, as the automatic stabilizer in the plane and so forth.
In these instances I claim the biggest human value those softwares bring is indenpendent from their openness.
To enable the example softwares to function correctly require lots of hard labour that is not fun at all. I.e. work. Often it is repeating the same old concepts over and over again, knitting the specific system together piece by piece.
I think there is no Photoshop killer because the people to whom it brings most added value are not programmers and it's usually not fun or rewarding at all to work with such a large codebase. Blender is a fantastic counterexample.
Of course, software should utilize open and hackable data formats so that the data does not vanish.
The long term value for the user and the concept of the software providing free speech capabilities then depends on the underlying software ecosystem, and there open source most definitely helps.
Open formats, open tools to hack on them, open platforms. Yes, definetly! Any other way is harmfull to all stakeholders. IMO, products can be closed source.
That black box model has been with Windows from day one and it hasn't stopped Windows owning 90% of the PC market.
I'm sure the IRS is kicking themselves for running XP for over a decade, building up such an extreme dependency on it that they are now paying huge sums of money for Microsoft to continue to support them.
The black box is only great so long as it actually works, and when it breaks you are completely screwed. It is in Microsofts business interests to make sure it works, but they also want you paying them money while maintaining control of your computer.
But when it does break, your only option is the true owner of your computer, who will milk you for all you are worth, because you are now trapped. You don't know you are in a cage until you want out.
To most users Linux is just as much of a black box as Windows is.
Even among Linux fans, the number of people who actually need to customize the kernel is tiny. The number of people who can customize the kernel is even smaller.
So where's the freedom? At the OS level, all that's happened is that the lockdown has moved from corporations to a subset of the developer community.
Most end users aren't any more empowered than they used to be.
Now - it's different in the web and language spaces, where there's a steady simmer of framework development, and many popular web projects/products wouldn't have been possible without framework sharing.
But there's still plenty of proprietary content there. Just try to get Google or Facebook to share their data collections with you and see how politically relevant open source 'freedom' is then.
If that seems like a tangent, it's missing the point that the value of a system doesn't come from the source code - it comes from the system as a whole, and includes usability, community reach, innovation, invention, and data.
Open source pretends to be a huge lever for freedom, but it's more like a battered fork caught in an avalanche.
In computing, the world-changing leverage is elsewhere, and always has been.
When that happens they ask me to fix it and if it wasn't me, then yes they would take it to a computer technician.
Just like they take their car to the mechanic.
Guess what. Not everyone is or wants to be a computer programmer and that group makes up the majority of all Windows users.
And why Windows has been so successful is you can get away with knowing very little about computers (like my mum and dad) yet still find Windows easy to use.