When free software isn't practically superior (2015)
gnu.org
gnu.org
When people start believing that open source software is inherently superior in every situation, or that ideological purity is the most important consideration, they aren't making decisions in the best interest of the company. Engineers are especially prone to overestimating the downside risks of using closed source software (A long list of what-ifs such as "What if the vendor goes out of business without warning?") and underestimating the downsides of using open source alternatives (Notably, the inability to pick up the phone and have another company's engineers deal with the problem, per your contract). The situation is compounded by engineers who genuinely enjoy tinkering with open source software on the company's dime and, frankly, would prefer to be paid to do so rather than purchase a more efficient closed-source solution.
Of course, there are some situations where open-source software is practically superior to alternatives. I don't claim to suggest otherwise. However, the endless debates about ideological purity and avoiding hypothetical edge cases with 3rd party vendors frequently cloud decision making abilities in a business context.
For personal and open source projects, I'm all-in on free software alternatives. For business purposes, I'll evaluate the available options and try to make the best business decision for the company.
One uses low pricing, is likable, and provides a fine list of enterprise features. The HN crowd will realise that these features are really different ways of describing a very small amount of code. But if you want to spend your employer's money and don't care to spoil that by telling your managers too much, the list is fine. Engineers who like the likable make money be spent.
One writes per-customer code on top of largely the same body of code, and charges very high prices, largely because they clearly know how to get stuff done using that code. They have the references to prove it, and they wrote the code, and the customers accept that they invoice customers for improvements to the free base too.
One uses a technique I don't understand at all. It's different from the other three, and it works. I mention it to say that the other three aren't an exhaustive list.
The fourth targets nontechnical customers and sell SaaS, I don't know the price level. You can git-clone the code and selfhost if you want, they'll be friendly but not helpful. If you make a PR on github they'll at least look at it.
How that relates to your argument I don't exactly know, but I guess it could be interpreted as saying that even if you admit that philosophy doesn't mean that you can't produce ""profit"" - especially if it is limited to software.
Also, in theory, you could be 100% accept communist philosophy yet operate a for profit business.
Maybe it's the HN bubble, but tech culture these days seems to have a strong element of anarcho-capitalism, taking the usual minarchism of libertarian thought just a small step further.
The freedoms the free software movement tries to realize are not comparable to what you are saying. https://www.gnu.org/philosophy/free-sw.html
A way of understanding free software, IMO, is that working with software for which freedoms are socially limited (so-called proprietary software) towards someone else, the proprietor, robs the user of the software of freedom and creates some kind of social hierarchy that is undesirable.
Meanwhile, the basic idea of radical leftism is that working using capital for which freedoms are socially limited to the benefit of someone else robs the worker (really, if you think about it, user-of-capital) of freedom and creates an undesirable social hierarchy.
I think that there is some kind of parallel between both, and it's pretty interesting. That isn't to say that companies should use free software or develop free software from their self-interested point of view - as a company using free software you're almost in the same case as a worker, and as a company developing software it can align incentives to lead to better outcomes.
That being said, I'd say social democracy is an example of non-radical leftism.
I don't think that term applies at all in this context. Somewhat simplistically, Communism is 1) A viewpoint on the historical development of society, most notably the economy 2) An extrapolation from that viewpoint on where things are headed, which is judged by communists to be a bad path 3) Advocacy for a path that diverges from #2.
There's a dozen different major branches/interpretations, but at heart they are all socio-political/economic philosophies that are far more complex than simply who owns a thing.
About the only parallel I see between free software is that both want property to be owned by the community. Though even then, I'm not sure free software would have even the restrictions that might be imposed by community ownership. (The community might say "no, don't build that thing." etc.)
Perhaps in a purely communist society software would be free, but free software itself is not inherently communist.
Speaking from experience: even if a software product is not freely licensed, there is immense value in source code being available and - better yet - modifiable (whether directly or through plugins) when trying to troubleshoot issues with that software or integrate it with other software or adapt it for your business' needs. Further, if your company's finance department is worth its salt, any such customizations and integrations are assets with real value, so even if your company's engineers are "wasting time" tinkering, the company can - and should - still capture this value on the books.
And further speaking from experience: with relatively few exceptions, I've found enterprise software vendors to be pretty much useless in terms of support, and to be more often than not an obstacle to business operations than a value to it when things go wrong. All for a pricetag that doesn't even come close to justifying their meager SLAs (that they'll inevitably weasel their way out of anyway).
The decision to use transparent software is more often than not a decision in the best interests of a company. Transparency is a dependency of trust; without that transparency, you have no real way of knowing whether you can trust your business on it.
I think you overestimate how helpful a paid support option is. I've spent time working with the vendor of closed source software to get issues resolved; it's often incredibly painful and time consuming, and meanwhile the business is not able to realize the full benefit of the software they've paid for. Meanwhile, I have never run into an issue in open source software that I wasn't able to fix on my own (absent help/response from upstream) or at least figure out a workaround, often one that would not be possible to figure out without source access. (Note that I'm explicitly ignoring the kind of "fit for purpose" issues that you're never going to resolve, period, whether it's closed or open.)
Adopting open source is not without its own risks, but it does give you many more options than any closed alternative ever will. If your business does not value that difference, then that's fine, as long as you've made that decision with open eyes.
Meanwhile, the closed source tool doesn't support your desired action action either, but their file format is binary/compressed/encrypted/undocumented for nebulous "business reasons," so you end up spending fifteen hours pushing buttons in their GUI instead.
I think the open source equivalent is: "What if this library stops being maintained"
Which I have encountered multiple times. Having the source code is useful, but most people don't have the time to add another open source library to the code that they need to maintain.
One such example is the pixls.us community for photography-related free software. All kinds of devs from projects like RawTherapee, darktable, PhotoFlow, Filmulator, rawproc, G'MIC, and more, plus users, are all in the https://discuss.pixls.us/ forums and we can all learn from one another and collaborate in ways other than directly contributing code.
http://libregraphicsworld.org/blog/entry/interview-with-pat-...
Hopefully others can learn from him and forge their own collaborative communities.
After all, in his initial announcement to create Gnu, he didn't say, "Of course it might turn out to perform worse, and it won't have near as many features, nor attract many other developers, or have a sane review process, or be secure... but that doesn't matter because it's all in the interest of freedom and that's the model people should follow." No, as with the OSI, he set out with some bold claims, then inspired people to help by incrementally making those claims be true.
Anyway, I fail to see how anything bad would have happened from him making this clever play. What would have been wrong with going to open source conferences, and eventually reaching a larger audience with his prescient warnings about mass surveillance, DRM, and whatnot?
OSI people tend to be as hostile, if not more, towards Free Software as people who write proprietary software, who simply think of it as a competitor that they rarely have to worry about (because their customers don't use it.) Open Source competes with Free Software for contributors, although it offers them nothing but the glory of helping multibillion-dollar corporations for free. At least Free Software gives you the ideological reward of contributing to the commons in an inalienable way.
I don't see how this is a true statement. Open Source is clearly a subset of Free Software. Free Software is, largely, Open Source software that also respects user freedom.
Unless you are making the claim that the "respects user freedom" part of Free Software is so huge as to make up 90% (or some other large percentage) of the importance of "Free Software"... but I don't really agree with that claim.
> since anybody can take Open Source and add whatever restrictions they want to its licensing
Well, no, not really. Copyleft licenses are free software licenses, but are also generally Open Source licenses. You can't add restrictions to copyleft licenses (in most cases). And while it's true that you can fork and add restrictions to your modifications when the original work is licensed under many of the weaker open-source licenses, that does not make the original work further encumbered. Someone can come along and take the original work, keep the license, and make modifications under that same license.
No. Open Source software also respects user freedom. OSI definition of Open Source license is pretty much compatible with FSF definition of Free Software license. Those terms are mostly interchangeable - but the whole point is that while technically they're similar, philosophically they point to completely different concepts.
> Unless you are making the claim that the "respects user freedom" part of Free Software is so huge as to make up 90% (or some other large percentage) of the importance of "Free Software"... but I don't really agree with that claim.
That's the exact claim of the article you're commenting under. And I happen to agree with that claim. User freedom is what's important, the rest are just consequences of respecting user freedom.
For me the question is how to solve this in the context of this: https://en.wikipedia.org/wiki/Maslow%27s_hierarchy_of_needs
We'll see there that freedom is pretty much high up in Maslow's hierarchy of needs (it's in the esteem part). Which means, it is very important, but only if your other needs are already met.
Can I live from making free software? How well can I live from making free software? These are the really interesting questions in my opinion.
Can I be free by making free software?
Also, as a developer, if I don't like the terms of some software, I have an additional choice to just not using it: just make what I need myself.
In particular attacking open source by downplaying the importance of collaboration, by giving quite absurd numbers IMO, it's attacking one of the things that I find transcend technical merit, like the freedom that is at the core of the free SW movement.
There are 2 type of FOSS software out there.
Corporate sponsored, generally pieces of infrastructure / development tooling, liberally licensed and rightly so.
Indie software, done mostly by volunteers on free time, there should be a creative commons like source-available NonCommerical license for it. Stallman's ideology of free for everyone doesn't make sense in the era of big tech.
This is why I don't dislike commons clause or open core - we aren't entitled to anything, and definitions of FOSS are arbitrary and outdated at this point. At least these raise the standards of living for developers, while still allowing us to view / modify sources.
Eric S Raymond concludes "Cathedral" with the statement that proprietary software is on its way out due to paid developers not being able to compete with the man-hours invested by volunteers. It's a very whiggish attitude that hasn't been borne out. He's still saying stuff like this, such as that Windows will inevitably become a layer on top of the Linux kernal.
It was nice to see this article come along to HN when I was already thinking about this. I do think it's important that free software be used on principle, even if it's not better or set to wipe out its proprietary equivalent.
Raymond's contribution to popularizing the phrase shouldn't be understated. Neither, for that matter, should O'Reilly's or that of others. But it doesn't seem the coinage was ESR's.
If we want to reclaim the radical roots of the free software movement, there needs to be a larger political project mobilising around what free software originally meant and extending that to challenge the dominance of the tech giants. It’s not easy, but there is value in the ideas behind free software. I first came across the movement when I was really young and I loved it - like, “yeah, intellectual property sucks!” The challenge is getting people who feel that way to to understand why intellectual property exists in the first place - how capitalism works, and why it needs intellectual property. From there, you have a bridge to a more radical politics."
Jason: "I see free software as one of the reasons we should unionise. I recently gave a talk at a Ruby conference on the Lucas Plan, which was well-received - everyone liked the idea of producing socially useful things. But then I shot myself in the foot by saying that the MIT license needs to die, which didn’t go over well. If you use a license like that to release software, you have no control over how your software is used. You can have all the moral codes you want, but then it’s being used 10 companies down the line by someone you don’t like.
I don’t think the solution is draconian control over software, as free software ideology is embedded in the industry. The solution is organising." [1]
[1] https://newsocialist.org.uk/tech-workers-inquiry-at-twt/
When I see a statement like this, I must immediately ask: what do you consider to be feudalism, and when do you think it existed?
> free software projects are run by lone developers and lack resources
I'm sure nonsense like this gets sage nods when presented in front of of nontechnical executives, and there are indeed projects this describes.
It doesn't describe RedHat, Ubuntu, Postgres, the Linux kernel, any number of Apache Foundation projects... it is either ignorant or dishonest cherry-picking.
> It's a great idea in the wrong economic system.
Economics is a useful domain of study, but studying economics does bad things to a certain kind of person.
In your reflexive attack on economics you seem to have misunderstood my point. I think free software is good, it's also on an organisational level successful, but it does not capture its own value, that much is fairly obvious, which answers the question of the author 'why is free software not mainstream?'
I heard your point loud and clear, it is hardly subtle, or novel. But in your rush to tell me how wrong I am, you missed mine, which is that you can't see what is in front of your face.
Free software is mainstream. It hasn't supplanted all other development models, and it hasn't conquered every market, but it doesn't need to. The fantasists/propagandists claiming it is fringy have yet to square that view with, say, the reality that stodgy F100 insurance companies migrated their LOB workloads to it years ago. The fact that it is mainstream means that the model that lead to this conclusion needs modification.
You don't have to necessarily 'capture value' in the capitalist/market sense to be successful.
Sometimes. The Linux kernel is developed mostly by paid professionals, as is OpenJDK, Chromium, and Firefox.
We need a new discourse of the "forkable commons" and how it transcends old individualism-vs-collectivism battles.
This piece confuses me though.
It constantly seems to intermix and conflate “open source software” with “proprietary software”.
Is that intentional? Do they really mean that? That “open source” software is in no way better than a closed-source, proprietary equivalent? That closed source and permissively licensed software is equivalent?
They can’t possibly mean that, can they? Is it perhaps only badly written, and I’m reading too much into this?
It elaborates on why Stallman wrote, so many years ago, that Open Source is misguided, or at least, that it doesn't share the same goals as Free Software.
Here's the gist of it:
- Open Source presents itself as a technically better alternative to proprietary software. Also, it often claims to be developed in a more collaborative way, "all bugs are shallow when there are many eyeballs", etc. If you want a specific name, someone who used to vocally make this kind of claims was Open Source's advocate Eric Raymond.
- There is then the onus of proving this assertion. Is it true that Open Source is, as a norm, technically better than proprietary software as some of its more vocal advocates claim? Is it true that its development is more collaborative?
- The article states that no, as any user can plainly see, Open Source is not always technically better than proprietary software. Open Source is often more difficult to use, or unpolished, or has a worse UI, and critically, many open source projects are maintained by a single person, so it's not really always developed more collaboratively.
- The article states that this is not a problem for Free Software, because Free Software doesn't claim to be always technically better than proprietary software. It's not even its goal. Free Software claims to protect user's freedoms, even at the cost of being less polished or lacking some features.
> For open source, poor-quality software is a problem to be explained away or a reason to eschew the software altogether. For free software, it is a problem to be worked through.
I cannot think of an OSS project that tried to "explain away" the quality issues they have (as in "It's poor quality because it is open source"), as opposed to working on them ("Yes, this is a bug. We'll fix some time in the future.").
When a Ubuntu update completely replaced the Desktop with buggy unity, with out warning or option, the response of Ubuntu developers was "it's open sauce software, you get it for free, stop complaining"
The update made a major change in the way the user interface worked. With the new user interface I found I could not easily access my programmes without spending a non trivial amount of time learning it, and there was no way back to the old interface, options fro running both etcetera. Ubunti was tremendously stable for a long time at that point, and I upgraded without hesitation. Not since!
As you say the interface was buggy. Dreadfully buggy. It leaked memory badly, was clunky and slow.
When I complained on my local Linux users mailing list (as did another member who had the same experience) the Ubuntu developers I knew personally took it as a personal affront.
Since I had not paid for it, how dare I complain.
They have a point. I do not use Ubuntu any more.
TFA states that OSS, by claiming it's technically superior, must defend itself when it's not superior. On the other hand, FSS must not defend against technical flaws or limitations because it doesn't claim it's technically superior, only that it respects user freedoms better.
Free Software people can just say "Yeah, that's bad. I hope it gets fixed soon. Can you fix it? Do you know a company that might sponsor someone to fix it?"
There's no need to defend Free Software. It's ours and it would be great if it gets better. We should work on it.
edit: Free Software is in a way less ideological than Open Source. Open Source relies on a sort of "invisible hand" that insists that the source being available for viewing and modification by the general public will make it more secure, result in fewer bugs, and in other ways result in higher quality. Free Software people hope these things are true, but they would prefer Free Software even if they weren't. They don't need to believe in any positive effect on software quality to believe in Free Software; instead they believe that people should have access to the control systems of the hardware that surrounds them. This is nearly orthogonal to software quality, other than that software quality can help propagate accessible control systems.
If Free Software can't keep up with the state of the art, I guess I'm going to always have old things.
They are using free and opensource as interchangeable terms for the same code, but used by people with different goals. I think at the time of this article, there was no license that was one and not the other. Bruce Perens has openly stated that the GPL was the example for the open source definition.
I did not find it to be badly written.
> I’m reading too much into this?
I would think so.
My interpretation was that "Open Source" advocates must win the argument that Open Source will always turn out higher quality software, while "Free Software" advocates have an inherent advantage in that the software is explicitly designed to protect freedoms and therefore starts out ahead of proprietary software, even if it's less featureful.
Whether I agree with this argument, I'm unsure.
Open Source Software prioritizes quality. Open Source Software developers do not care about Freedom except as a means to that end. However, almost all Open Source Software is also Free Software, so despite this difference they end up supporting Freedom as a byproduct.
Proprietary software development also prioritizes quality, but the important difference is that proprietary software actively opposes Freedom. The article is discussing priorities, so it's natural for it to compare two methodologies with the same priority, but the two are not conflated. Open Source Software still (usually) provides Freedom, while proprietary software never does, and Freedom still matters even when the developers don't care about it.
To ensure code is maximally reusable IMHO all we need are MIT, BSD and GPL, LGPL. And two of those are not really different in my mind. I understand AGPL too, but not MPL or Apache licenses. But if they are needed then that really should be all of them. Any others have some kind of non-free agenda.
I was expecting a treatise on the trade offs of developing free software and instead it seemed mostly like a rant that boils down to "open source bad".
What about when free software is actually inferior? The reason the year of Linux on the desktop never comes is that Windows and MacOS provide an experience that for the majority of users is overwhelmingly better than Linux.
The response from the FSF crowd seems to mostly be "deal with it because freedom" which is fine, I guess, but I have better things to do with my time than battle my operating system to recognize my external monitor correctly.
Everyone seems to point to Linux as the best model of open source community that managed to outgrow and outpace any commercial offering. Why is that?
The secret sauce for any project, open source or not, that can grow as fast as successfully as Linux is the presence of a BDFL at the top. The one that sets the vision, that pushes back again anything that would impact negatively from that vision and, yikes, might reject patches people have spent their free time on. Blender and Godot are other fully open source project that are competing with commercial offerings, and all have either a BDFL or a very close-knit governance model at the top, that is not afraid to take the next step and find sources of funding for its own full time developers.
All of which is opposite to the governance model of the two biggest UI projects in the Linux desktop world, GNOME and KDE. It's a loose bunch of passionate people that work on whatever tickles the fancy right now, and if they get bored they'll just rewrite a core library or app, backward compatibility be damned, we're just volunteer we don't owe you anything.
We'd have Linux on the desktop in 2020 if any of those projects had some Torvalds-like figure ranting on a mailing list about why the user is always right, shame on you on redesigning the menubar yet again breaking any UI convention for no real purpose, and no, Canonical/Red Hat/whoever, we will not accept this patch that undermines the goals of this project.
So it's really got nothing to do with open source, it's just an organisational problem. Well, that, and the fact that the vast majority of Linux users seems to be incredibly stingy and reluctant to support and pay for these volunteers' time.
Would a Linux Steering Committee have worked for early Linux? Probably not. Would it work now? Absolutely.
I think if you followed things more closely you would see that this is not true. There is no shortage of highly opinionated people making angry rants and throwing out patches. That's not going to help with the ridiculous amount of edge cases it takes to keep a desktop working.
Using the Linux kernel as an example, there has been a meme there for quite a long time from overworked maintainers complaining about how the BDFL model scales poorly. (Recent writing here: https://lwn.net/Articles/703005/)
I don't think a Torvalds like BDFL would save Linux desktop. With the Linux kernel, there is a massive incentive for everyone to circle their wagons around one kernel. By having a single Linux kernel, it makes it much easier for vendors to create drivers and services against. With the desktop, the incentive to stick with "one" desktop solution drops off quickly.
If I want a tabbed window manager and one doesn't exist, I create it. This is great for me and the people who want a tabbed window manager, but for the other 95%+ of the population, it's essentially worthless. Multiply that effect by thousands of decision points and you have the Linux desktop: An abundance of fairly mediocre to good options with few really great ones.
What's the difference between HURD and Linux that make one successful but not the other? I can't be a BDFL.
Last night I finally gave up on trying to do it the FOSS way, set up a Samba share on a 6-year-old mid-range PC (8Gb RAM, 3.5GHz processor), and got flawless playback on each of my troublesome media entities with less than ten minutes of effort. On a whim, I also tried setting up Plex (a semi-paid service), and got similarly smooth and flawless service. My idealistic 13-year-old self would be horrified to hear me say "I regret all that time I spent messing around with Linux, when I could have just used a Microsoft product, or a different paid product, that Just Work".
(And yes, I'm kind-of intentionally invoking Cunningham's Law, here, in the hopes that someone can suggest a way of tweaking a RPi4 to be an effective media server - I'd much rather use that than have my PC always-on, but if that's what it takes to get decent playback, I will)
Also the PC can probably run entirely free software while the Pi will require non-free binary blobs due to its proprietary Broadcom hardware design, so I would say the PC is preferable from a freedom perspective.
Also, comparing flawed performance on a RPi, vs good performance on a full-fledged PC.
Is 1Gb RAM and 4x1.5GHz not considered sufficient specs to stream video? That is a genuine question, I'm not up-to-date on hardware specs nowadays - but it _seems_ like it should be sufficient to me. Obviously "more is better", but I'm surprised to hear that this is considered insufficient.
My Xbox One S for example can decode most streams with Direct Play using the Plex app (or all using VLC).
Here[0] is a recent update from a Plex Team member about their knowledge of and intention to fix these issues, no timeline though.
[0] https://forums.plex.tv/t/hardware-transcoding-for-raspberry-...
Again - my 13-year-old self would have be stunned to hear that anything-other-than-Linux was preferable from a freedom perspective, and that "the standard Windows interoperability suite" is FOSS.
Plex is GNU General Public License version 3 free software. Lots of free software are and should be paid products.