DEV Community

Discussion on: GNU Public License is all but free and you should never use it

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

I know I already commented, but this seems worth separate mention: why do we assume that proprietary use of open source code is such a horrible thing?

If an open source security protocol is developed, and it is used by Microsoft, doesn't that mean more people are secure? If a faster sorting algorithm is written, and Amazon uses it, doesn't that mean our browsing experience on Amazon is faster?

I think we feel "cheated" sometimes - "the big boys have everything, why should they be allowed to borrow my crayons too?" - but that actually seems a little petty when you think about it. We can't compete merely on moral high ground! Open source doesn't succeed because it is more righteous, open source succeeds because it is technically superior. The big boys aren't gaining an advantage over us by using our open source code, because we still use it! If Big Corp sells a product which does all the same things as Open Source Group, won't the free product win? Sure - it already has time and again.

By contrast, when we're operating on this "compete by moral ground" attitude, like the FSF does, it harms our quality. Some of the worst code I have ever seen comes out of GNU and GNOME. If you read the source code for libstdc++, it is a crufty nightmare! They have no need to try and improve, because they don't feel a need to compete - they are morally superior, with the "holy blessing" of RMS.

Contrast with LLVM's libc++ - an open source implementation of the exact same library. It is clean, well documented, and better performing. They compete on grounds of technical superiority, not grounds of moral superiority. Apple uses them, but that doesn't matter - so does FreeBSD and many open source projects.

So, ultimately, I think half the "point" of FSF's platform is actually proven null and void.

Collapse
 
millimoose profile image
David Vallner

The FSF assumes that because of the Embrace, Extend, Extinguish practice, and the Unix wars where proprietary vendors tried to assert their own flavour of Unix as "standard". (A closed one.)

This isn't like some paranoid fantasy of Stallman's, this is documented history. You might argue we live in a different age these days, with New Microsoft being all cuddly wuddly, but that doesn't mean the FSF ideology is completely unjustified.

Collapse
 
codemouse92 profile image
Jason C. McDonald • Edited

No, that's fair, that has been a factor in the past, and one I had momentarily forgotten about.

Ironically, that article mentions the anti-trust lawsuit against Microsoft, and it was the Open Source Initiative which helped get the ball rolling on that, after the leak of the infamous Halloween Documents (read the book form of "The Cathedral and the Bazaar" for more history.)

I don't necessarily trust Microsoft these days, but there is a different legal precedence in place now. Attempting an "embrace, extend, extinguish" would probably go down quite differently today.

Even so, remember, I'm an OSI member - I believe there is a time and place for the GPL. Linux and many of its major pieces are best off with that license - especially factoring in the Unix Wars. The two problems you mentioned aren't "moral superiority" or "the big guy shouldn't borrow my crayons" issues, arguably by sheer scope and nature of operating system components. Applications and libraries are generally very different animals (and there are still places for the GPL there, as I said).

All this said, it still doesn't justify the sweeping 'all proprietary is evil' stance. RMS recognized a legitimate problem, but he responded by going philosophically overboard.

Thread Thread
 
millimoose profile image
David Vallner • Edited

For the application developer that needs to make a living, that's an understandable position. For users however, in practice it comes down trading their freedom zero - which is arguably the important goal of the FSF - for said developer's freedom, usually without having much say in this. Nobody can meaningfully run or modify Facebook, or AWS, or most of the software defining to their own ends, regardless of how free or not their authors were to use whichever libraries they used to develop that software.

The wars of the past aren't all that this is about, they're just a motivator for a given position that still applies today. (Albeit a motivation that undermines attempts to explain it.) Whether that position is "good" or "bad" is not a trivial issue to reason about even on terms of software development philosophy, and can't be neatly reduced to "going overboard" vs. "being naive"; or handled by staking out what "really free" and "not free" is. (Which is a game of idealist semantics, and arguably materially irrelevant. Compare and contrast: the opinions of marxists vs. liberals on individual autonomy.)

Thread Thread
 
kravemir profile image
Miroslav Kravec • Edited

The Facebook issue is more of "vendor lock-in" kind, but based on relationships.

Instead of devices and technology interoperability lock-in, Facebook is locking people's interoperability and communication to a single platform. If I wouldn't be on Facebook, I would loose asynchronous chat-based communication to half of the people I'm regularly communicating with. And, everybody who is on Facebook, is there, because of almost everybody is on Facebook.

I wouldn't care if Facebook alternative was closed source, as long as I'm not locked to that alternative and I can switch a provider or application whenever I decide to. For example, it doesn't matter which email hosting I use, I can still contact any other email. This can't be done with a centralized solution like Facebook.

Thread Thread
 
millimoose profile image
David Vallner

That’s because one could argue that even the AGPL doesn’t go far enough and we need something even more restrictive (that we’re never getting) on developers that addresses user data like the social graph and acting upon it.

As great as the open source movement was for the needs of programmers, it’s hard to argue that the history of software in the past decade or two has been anything but a series of tragic defeats delivered to the users, the sharecroppers on the big data plantation.