Closed source isn't immoral if…

I’ve been thinking lately that the way we approach the difficult wall between idealism and practicalism. Mostly I’m concerned with software in the Free and Open source communities and how we can navigate the issues. Let me explain.
Because of the way Richard Stallman of the Free Software Foundation conducts himself, he can be considered either as a leading light of self sacrifice. Being the first into cutting off his own functionality in order for the world to match his ideals of free speech software. This can lead to beating a path of necessity which can lead to positive creation of free replacements or it can reduce attractiveness and economics of the whole platform. As time goes on many wish to marginalise Richard’s voice because he wants everyone to painfully sacrifice just as he does.
On the other hand you have practicalists who see no problems with using closed source anything. It’s all fair game and the only good aspects of FOSS is that it’s free as in cost. If you can add a closed source library, module, plugin or driver. Then it’s your duty to do so or look stupid in the eyes of these practicalists. But then being practical about the situation your in can lead you to being able to utilise features and expand the user base without forcing people to confront painful sacrifices.
What I want to do is avoid both painful sacrifice and the complacency of practicalism. And the balances that the Ubuntu community have tried to strike are a good starting point in my mind. “Free where possible, Closed where absolutely required”. But I think I can do better.
It’s not wrong to use Closed Source (non-free) software, if…
- You understand the consequences and nature of closed software AND
- You make a reasonable attempt to find a free speech alternative AND
- You fund or put time into a free project, whilst using the closed version OR
- You put money into a bounty to start a replacement project whilst using the closed version.
It’s not so much a problem that people use closed nvidia drivers or flash-nonfree. It’s a problem that people do not understand closed nature limitations and do not have the will or method to support the creation or further development of the free alternatives. We may not be able to have the free alternative right now, but that doesn’t mean we should stop fighting for it, but at the same time it doesn’t mean we should stop using the closed solution.
I’d be interested in hearing about your thoughts, because this is a codification of my thoughts I will try and follow. As such I’ll be happy to do my duty and put some money into Gnash, SVG tools, Nouvou and other replacements to closed tools I use.
Tags: foss, free software, fsf, linux, open source, richard stallman, Ubuntu
I think we need people like RMS who are idealists, and people like Linus who are practical. They kind of balance each other.
Overall I am a little bit of both. I dislike restrictive EULAs, but I still use closed source when it suits me. I think eventually if the computer science wants to really hit it’s full potential we need to drop the concept of proprietary software almost entirely though. Free software is just better science.
Thanks for another thought provoking post, Martin. Nice to read a post that doesn’t automatically take one side and “toe the line”.
I’d say that I agree with what I interpret as your underlying principal:
“Proprietary is fine as a temporary measure only where it eases people coming to FOSS while a replacement is created asap (aided by financial / code / other contributions).”
Seems very “Linus Stallman” to me.
I use open source, because so often i say “I wish this had xyz feature”…. “i know, i’ll add it”.
there are some closed source app that i’ve never felt were lacking (or opressing me), such as Opera browser, which i’ll continue to use.
So, I’m failng your 4 options.
But excellent post – I’m going to reuse it, especially the 4 options.
My personal opinion here is basically thus:
I’ll only use non-FOSS software when a FOSS alternative either doesn’t exist or is crap.
2 examples:
1. I use the non-free nVidia driver. I want 3D support on my video card. Nouveau isn’t ready yet, so i use the non-free driver. When Nouveau is usable, i’d be more than happy to switch.
2. I use the non-free Adobe Flash plugin. I want to be able to watch YouTube clips or play flash games when i’m bored. Swfdec and Gnash both have massive issues doing either of those simple things, so i’m stuck with a non-free option till Swfdec and Gnash are made better.
I also have a 3rd example that sort of proves a different point. Skype.
I use Skype because it Just Works (I don’t use PulseAudio, but the new version fixes PulseAudio issues) and all my friends use it. I’d LOVE to use something FOSS like Gizmo or QuteCom or XMPP Voice, but none of my friends are on it and i’m not going to be able to get them to switch nor would i like to not talk to them because i refuse to use a non-FOSS application. Also, all the other apps i mentioned are not quite as install-and-play as Skype is.
It’s not wrong to use Closed Source (non-free) software, if…:
5.) You start advertising (by luring with manpower and money or an alternative business model) the closed source product to be open sourced with reasonable hope to succeed. See blender, mozilla, openoffice.
Much more problematic is the use of a “standard” tightly controlled by one entity (like DirectX, .Net) especially if the standard is moving fast (Abodes PS, PDF and Flash for example are rather stable). It better to stick to standards used by multiple big vendors (like OpenGL, Java, HTML and other W3C stuff).
The problem you have is that you fail to see or accept that many people are fully aware of the consequences of using closed source software, and yet do not hesitate to use it for several reasons. In the business world, we’re mostly talking cost vs tradeoff equations, where switching a platform completely brings in additional cost in terms of training the staff on the platform and in the program. Even if using a open source alternative in Windows, if it is a complex program, you still need to spend some time retraining the staff to use it properly and this costs you money. Now, whether it is actually more beneficient to switch to a FOSS solution or use the proprietary one may also depend on the stability of both options, and the prospect of either of those receiving long-term support, which is crucial in the business world.
In the personal computing world, it is a bit different. Switching to a completely new platform is inconvenient and is an added time-cost – the vast majority of computers, be they laptops or desktops, come preloaded with Windows. So why on Earth wipe them out when they come preinstalled and all you have to do is just start work? Yes, you paid for them, but this is something the user accepts as a price of the computer, as the alternative would be to read beforehand about Linux and computers themselves for them to be able to go through the installation process (as easy as it may be – you still have to enter BIOS and switch the boot order, which is NOT trivial for someone who knows next to nothing about computers). And when you’re done, you’re looking at an environment you’re not familiar with, with programs you have never heard of (apart from Firefox, that is).
There’s a different kind of personal-computing users as well. These know their way around perfectly, but still get to use Windows. Why? This may be because there is no real alternative to a particular program they need, or simply because they care about the result of their work, and not the tool they use it to get it done. With closed source software, I have yet to see a program that restricts me in EULA that the product of my work using that program does not remain my property. Sure, there are some that restrict what I can do with the result of my work (the typical example being Visual Studio Express), but then it is only a matter of choosing such product that will provide me with the right privilege for the job.
I do agree with you on one thing – when there is an open source alternative that truly provides advantages and added value over a similar closed source product, then by all means we should go ahead and use it and support it. However, I would hesitate to do so if the product is critical for my work and the community support is such that the project has an uncertain future, or if the advantages do not outweigh the inconvenience of making the switch.
There, that’s my take on it. I certainly hope this time you won’t start attacking me like a zealot and we can get some solid discussion going on.
I think you do get right to the core of the issue with that picture; yet there’s one thing it does not show and that applies to about 90% of this world’s computer users: born in “slavery” where you’re never shown anything else you’ll never realise that these chains needn’t be there! You think the chains are “part of it” not even seeing a problem with them or life without them!
Personally i consider RMS’ attitude “important yet totally exaggerated”. From a user’s point of view you point out pretty well what’s important (yet again, people don’t see the chains), yet it’s also my freedom as developer to decide weather i want to provide my software through the FOSS paradigm or proprietary (yes, it’s FREEDOM too). I’d go FOSS as i see a lot of advantages there. But in certain cases there might not be. Small market that rules out any help from a community, … whatever.
It is important to show people their chains (and then not show them a world with _other_ restrictions because there simply is no free alternative, again pointing to your issues that make usage of prop. software valid). But you will not succeed when you call them either stupid, or some other extreme – think about it, an ultra left wing will never be able to convince an ultra right wing to change sides, but a moderate person can – with brain and good arguments – convince an ultra-whatever to step away from the extreme part of his attitude and maybe get him/her somewhere into the middle…
Why would I attack you? Radical practicalism is so inrained into modes of thinking that it should be obvious behaviour to identify. Either way I don’t need to attack you to do it.
I think these rules make a lot of sense for Ubuntu, and every other gnu/linux distribution to adopt.
With regards to: “Free where possible, [Proprietary] where absolutely required”. I think you accurately state the position of Ubuntu.
As a group of developers, creating a free replacement (for a proprietary component) is all the more possible. If they say that proprietary software is required, let there at least be a timeline for when it will not be required.
First. great comment to a great post. We definably need to open the eyes of the users and extremists, although I believe that open development generate a better and safer code there is no need to say that closed source shouldn’t be used.
Balance, that is what we need.
How about a Free alternative to Ubuntu One?
Er, sorry about that >.>
I think one thing to take into account might be whether or not people are focusing on freedom because it’s practical — they don’t like being tied into a closed system long-term — or because they themselves want to be “different,” and to distinguish themselves from their “lessers.”
I think there’s a lot of this kind of thing in the Free Software ecosystem … people looking down on and putting down anything proprietary, like the FSF’s anti-Windows 7 campaign. And insisting that people switch to Free platforms whether or not they actually serve people’s needs. Freedom is definitely a feature to look for, but so is usability / elegance, and that’s another thing that a lot of these people seem to have disdain for.
I’m actually less displeased with Mint for including patented codecs and non-free plugins — enabling functionality that can’t be had with Free Software — than I am with Ubuntu for tying the world’s most popular free desktop into a proprietary online service by default.
It’s really like anything in which you are trying to make a change.
Not changing is far more practical in the short-term… but it doesn’t change anything.
The question is how many short-term freedoms are you willing to give up for long-term freedom.
If “everyone” is using Apple and Microsoft, then you will be able to have access to more stuff (videos, commercial software) by using Apple and Microsoft, but it also means you are restricted by their EULAs and DRM.
I like how Ubuntu treads that thin line of trying to keep the distro as “pure” (free license) as possible but also trying to make it as practical and functional in our current technological-social climate as possible.
Skype is indeed a special case – it’s a great example of all that is wrong with proprietary software.
Skype’s protocol is closed, as we all know. It’s encryption strength is unknown. How do you feel about having conversations that your government, any other government, any not so nice company, and even Skype/EBay itself may be listening in on? Doesn’t that concern you? Especially considering that Skype has a track record of talking to (from the Western POV) unfriendly governments, such as China, that have not so great human rights records.
The Skype client is, well, horrible. It doesn’t fit well into any desktop (Gnome, KDE, Windows, Mac, etc). It always feels out of place. No multi-IM client (such as Pidgin) can or does support it, so you always have to have it running.
And the list of faults goes on… and neither you nor anyone else out of Skype’s small team can ever fix any issue with Skype. Imagine if tomorrow Microsoft buys Skype from EBay, and halts development of the Linux client. There’s nothing you do… and given how you said you value talking to your friends more than you value your freedom, you’ll have to switch to Windows, and even more proprietary software.
Proprietary applications like Skype are just huge security problems, huge time sinks, and lead to further loss of freedom. Keep that in mind as we all discuss how we “have” to use proprietary software.
Martin,
Excellent post, and I’m in agreement.
Your 4 points remind me of “Carbon Offset” taxes/payments. Perhaps it’s time to have a similar concept in the computing world? Analogy: If you drive (use) a radically polluting vehicle like a Hummer (Windows) to get to work, then you ought to put something positive into the environmental clean up fund (F/LOSS world) to compensate. For software, the contribution can be intellectual (your points 1 &2) , labour (point 3), or monetary (point 4).
Keep up the good work!
Randall
Great article, i think i’ll put this i my blog. Thank you
Who the hell do you people think you are? Not only am I under no obligation to explain why I choose what software I do, you seem to think that people somehow have an obligation to donate time and money to FOSS just because they use non FOSS alternatives? Are you people idiots, or just ignorant? If some of you actually used your boundless energy to actually improve things like Linux, rather than wasting time constantly crying about proprietary software, then you could actually make Linux worth using.
In software at the end of the day its all about service. To me points 1 & 2 are more about scoping out the market for certain software products and not anything specific to FOSS.
If you want to make the best choice you should look to both proprietary and open source vendors. The licensing and code availability will naturally affect the cost benefit analysis.
So the Skype example, sure it doesn’t fit well into the DE of various platforms, and yet it still offers a more compelling service.
With regard to the images above: The idealist dies but his idea does not. The practical yet enslaved man just dies.
Nothing wrong with just dying.
Who do you think you are? You are under no obligation to complain at me for complaining at you for being as you are. Since Linux serves me perfectly well as it is, isn’t it _your_ job to make it into something that serves _your_ needs? If you think I’m spending time working for you for free you’ve got another thing coming.
If you don’t want to use FOSS and be in this community, then fine, go away and stop moaning that there are all these FOSS people talking about how great it is. If you have problems, do something about it, stop crying for free developer time.
*put into similar terms + hug*
your comments regarding the supposed “security” risks of Skype are at best, comical.
you live in this world, and you go about your daily life. talking to people in person (someone could be listening to your conversation through these weird things called Acoustic Sound Pressure Levels, or in laymans terms: audible sounds). you also make telephone calls using your landline or mobile telephone (which could be being listened in to by the government or anyone else who has access to such surveillance equipment. in this day and age it’s not hard to do). and you also use the internet (and every packet of data you send and received is being happily logged by the ISP and this data is at the mercy of whoever)
and you’re complaining about security?
all i can say is el oh el
You also walk around and hand people your credit card when you buy lunch, but you don’t yell your credit card number across the room.
When you buy items online, you (I assume) only give your information over HTTPS.
And you don’t have a page on the web saying your full name, address, DOB, etc
But if your telephony is insecure, that’s pretty much what you do – any interested party can hear whatever it is you say. And it’s easier to tap an Internet telephone conversation than a regular POTS one (I challenge someone in China to tap my phone line, but I bet someone in Asia could tap my Skype calls).
Person to person talking isn’t terribly vulnerable. You only exchange limited information with people you trust (perhaps just for that purpose), and that information is restricted to a limited physical area. Not so with data that travels over the Internet.
And arguing that since traditional telephones don’t have such security, therefore, why should we care that our Internet phone technology doesn’t either, is a bit backwards. Over time, people should be looking to improve security, not simply settle for the status quo, or give it up. Just because the existing technology is subpar doesn’t mean its replacement should be.