The Torvalds Transcript

LWN writes about a InformationWeek interview to Linus Torvalds: “Finally, the real basic issue is that I think the Free Software Foundation simply doesn’t have goals that I can personally sign up to. For example, the FSF considers proprietary software to be something evil and immoral. Me, I just don’t care about proprietary software. It’s not ‘evil’ or ‘immoral’, it just doesn’t matter. I think that Open Source can do better, and I’m willing to put my money where my mouth is by working on Open Source, but it’s not a crusade – it’s just a superior way of working together and generating code.”

Oh, I agree with that too. I mean, the horror stories we heard about from the development of Vista, where the various departments weren’t talking to each other and had no access to different parts of the code (code that they needed to look at to do their job)… I mean, it’s all Microsoft; surely the individual departments aren’t protected from the others by NDAs…

Microsoft has apparently tried to change that, since. We’ll have to see how that works out for them.

I mean, the horror stories we heard about from the development of Vista, where the various departments weren’t talking to each other and had no access to different parts of the code (code that they needed to look at to do their job)… I mean, it’s all Microsoft; surely the individual departments aren’t protected from the others by NDAs…

Do you have a source for this?

I’m not accusing you of lying; it’s just that this goes against the environment I know of. Microsoft’s development environment has been able to make them competitive against larger, better-funded companies because their organization was coder-friendly. (I could go into that, but that’d almost be an article in and of itself.) Any change in this environment would mean that Microsoft is losing their biggest advantage, and that would definately be newsworthy…

I agree with Torvald’s comment, “Open Source….it’s just a superior way of working together and generating code.”

As a developer, I feel the sense of community when working with other developers and having a common goals and ideals.

The idea that the FSF has, that proprietary software is inherently evil is just wrong. I believe the reason for that is because of the abuse of patents, the DMCA and abuse of the legal system. Apple, Inc. is a perfect example, and so is the SCO Group.

The idea that everything should be open is ludicrous! The reason being, open source should be accommodating just as some closed source vendors. Linus has the right idea, co-existence is better than nothing.

Actually, as a developer, open source is a lot better for your career if you’re above average. Most professions have something called a portfolio that allows you to demonstrate your skill level.

In the scientific and literary world, you have published papers/articles in your portfolio. In the engineering and pharma world, you have software patents in your portfolio. In the artistic world, you have paintings or sketches or graphics art in your portfolio. In advertising, you have your product launches. Public speakers have a list of speaking engagements. Etc.

But when it comes to proprietary software, you have nothing other than “trust me” and “trust that my references actually work at the places I’ve told you”. Sure you can put screen shots and product guides, but nothing really to denote that you actually contributed to it in any real way or that the screen shot isn’t anything more than a smoke and mirrors prototype or photoshop job. When “trust me” is the criteria, it’s harder to separate yourself from the masses (many of which might be better BS-artists than you).

In the open source development world, developers have a portfolio out in the open. Managers don’t need to trust you. They (or their key developers) can look directly at your contributions and actually try out what you’ve created.

So if you’re good, you stand out from the crowd without resorting to BS.

Actually, as a developer, open source is a lot better for your career if you’re above average. Most professions have something called a portfolio that allows you to demonstrate your skill level.

It certainly can be if you’re fortunate to work with common technology that lends itself well to open source code, but many of us write software under tight NDAs or under employment contract, and some of us also work in specialized technical environments that we’re not very likely to be able to afford as individual users (and that sometimes doesn’t even exist outside of the places that we’ve already been working).

That makes it very hard to (legally) provide code samples, or to prove that provided code samples actually work. 🙂

I’d say take advantage of it if you can, by all means, and work with open/common technologies if possible, but realize that the whole world doesn’t consist of POSIX environments or code written in C, C++, Java, or other synctactically similar languages.

“I have the same feeling at work and we are not doing free software at all … We are all working together with the same goals. ”

You stole the words right out of my mouth.

One of the biggest benefits to being a software developer is that for the most part we work with other folks who are just as passionate and driven as we are. In other areas/careers this just isn’t the case.

In the end, I like shipping code more than anything else…I don’t care if it’s open, closed, green, purple, whatever…knowing that someone will use a product I had a hand in is reward enough. Creating a usable, extensible API comes a very close second.

So long as the API is thorough, I could care less if source is available. In fact, if the API is well designed, documented, etc…source doesn’t need to be available.

I’m sick of some of the FOSS weenies thinking they are the only ones that can ship quality code because they work in a “collaborative, cooperative environment.” Every single code team I’ve ever been on is that way, and I’d like to think we shipped quality stuff.

Jayson, Remember one key difference between your view on software developement and the view of “FOSS weenies”… I believe Torvolds touched it briefly, without really understanding the relevance.

“It allows us to be selfish.”

The “you need to open source everything” mindset is based in selfishness, pure and simple. People have this strange situation where, for whatever reason, they think the world owes them something, whether it is software or anything else. Yes, Torvalds is less guilty of the attitude than Stallman… but he still makes some pretty stupid statements that give away the core idea as being the base of his “GPL2 love.”

To use the case of the business owner who had to spend a lot of time and hastle finding a new solution: It’s great that you (the business owner) found software that you could use well, but you paid the company to let you use their software, at no time did you pay them to make life easy on you should they go out of business (why should you be entitled to use their software longer than they can? What figures into that assumption? Why do you assume you should keep getting rich off of people who had a far worse time financially than you did in switching programs? o.O… Git)

It’s the same thing that makes people yell about BSD licensing or other such nonsense… people are inherently selfish little bastards and the idea that they can’t squeeze everything possible out of someone upsets them.

Personally, I find both Stallman and Torvalds to be rather disgusting people, they both have horrible moral philosophies and they are both selfish little prats.

Why doesn’t anyone ever ask Bill Joy questions about software patents, the future of technology, etc. Why is it always someone with the “I like GPL because it lets me be selfish, LOL!” attitude?

The idea that the FSF has, that proprietary software is inherently evil is just wrong. I believe the reason for that is because of the abuse of patents, the DMCA and abuse of the legal system. Apple, Inc. is a perfect example, and so is the SCO Group.

You’re right, when you end up creating a community solely based on dogma and religious furver, not only do you isolate those who would have otherwise contribute but at the same time, you attract the very people you don’t want contributing – those with toxic personalities that can destroy and otherwise harmonious, happy environment with their ideologically driven hatred of what they consider the ‘great evil’.

Opensource, quite frankly, should prove itself in tangible ways which benefit the end users and programmers, and demonstrate through practical application that it is a superior model rather than using long winded, dogma drive statements over the perceived evils of another model.

Its like the fall of communism; Reagen and his long winded statements didn’t do anything, the US simply continued plodding along because the alternative was inherently flawed, it was only a matter of time before the flaws ultimately bought down the empire – and the same thing will occur in the proprietary world.

What will the outcome? not necessarily a mass movement to the opensource model, but a re-evaluation of the business model itself and what actually constitutes intellectual property and what can be used as a differentiating factor when it comes to product development and selling it in the market place.

I don’t believe all software should be free and that might be a change from what I believed a while back – that software should be open.

Simply put, getting proprietary powerhouses to budge on making everything OSS – to make their products open source just because some guy in a beard says closed source is evil – is just too damned unrealistic.

It’s been proven that closed source AND open source can work together harmoniously in any environment – an environment where collaboration seems to be the desired result for the sake of increased productivity – and it takes both camps to create that harmony.

I do, however, believe that software patents hinder the desired outcome – patents tend to halt the production of good, competitive, open and closed source software that works just as good, if not better, than the original incarnation.

The software patent is an extremely dangerous practice that can stifle innovation – which has been proven. Imagine if there was a patent on word processing or spreadsheets or presentation managers. We wouldn’t have Lotus, Microsoft, WordPerfect, or OpenOffice all vying for similar markets. We’d just have Lotus 1-2-3, WordStar, and Harvard Graphics.

It’s not closed or open source we should be debating about – it’s patents.

Closed source *IS* evil and *CAN* be immoral. Proprietary software doesn’t have to be. Most companies out there have spent tens of thousands on proprietary software that they build a process around – and then the company goes broke, changes the product focus or discontinues the software.

They could be 100% happy and invested in the software they have, but they will have to go through the outrageously painful and expensive task of moving to another package over time – it’s inevitable.

In the open source world, that doesn’t happen. Or, they can add features or fix bugs themselves – it may even cost them as much money to do it as they would to switch, but there is not the painful and disruptive process involved in transition.

As the article points out (and some other commenters do as well), the concept of open source is much more than just a concept of “free” software. I and many other business owners have purchased open sourced commercial software and modified it to meet my needs. It’s the reason I chose it. I have also been burned as described above and gone through months of major disruption to regain the status quo.

Closed source *IS* evil and *CAN* be immoral. Proprietary software doesn’t have to be. Most companies out there have spent tens of thousands on proprietary software that they build a process around – and then the company goes broke, changes the product focus or discontinues the software.

They could be 100% happy and invested in the software they have, but they will have to go through the outrageously painful and expensive task of moving to another package over time – it’s inevitable.

But why is this inherently evil? How is it different than companies that spend tens of thousands on proprietary hardware, machines, equipment, supplies, or anything else?

If my company uses Machine X to produce Widget Y, and the makers of Machine X go out of business, it’s probably going to be painful and expensive to move to a different type of machine. Does this mean that the makers of Machine X are evil?

If my company uses Machine X to produce Widget Y, and the makers of Machine X go out of business, it’s probably going to be painful and expensive to move to a different type of machine. Does this mean that the makers of Machine X are evil?

The problem with this statement is you’re confusing hardware with software.

Hardware is inherently proprietary since it’s a manufacturing process.

Software is not “manufacturing”

I can get better collaboration by allowing other people (outside of my company) to work with my software to improve it – I cannot work with other people (outside of my manufacturing plant) to work with my process of manufacturing easily.

“The problem with this statement is you’re confusing hardware with software.”

The problem with your statement is that you’re not seeing the big picture. You’re focusing on the details. Call it manufacturing, authoring, producing, whatever…the end result is the same: A product is made. It doesn’t matter how it’s made.

“I can get better collaboration by allowing other people (outside of my company) to work with my software to improve it – I cannot work with other people (outside of my manufacturing plant) to work with my process of manufacturing easily.”

You can get both if you are willing to pay for it. A non-trivial peice of software is equally as complex as a manufacturing plant, and thus would take a comparable amount of time just to get brought up to speed on (i.e. you can’t just dive in and start hacking away). But that’s the problem, I think a lot of folks equate “open source” with free when that’s not the case. Most professionals aren’t going to start readily contributing to some software without getting paid to do so.

There is one area of software where I think paying outside individuals to contribute is worthwhile is security stuff. Other than, “outside” collaboration is more costly/trouble than it’s worth in the end.

The problem with your statement is that you’re not seeing the big picture. You’re focusing on the details. Call it manufacturing, authoring, producing, whatever…the end result is the same: A product is made. It doesn’t matter how it’s made.

On the contrary, it does. In an effort to get away from the tired analogies, I’ll say “consider…books”. If books were developed the same way as proprietary software, then not only would you have to learn how to read English to read English books, but you’d also have to learn (for example) Rowlingish to read Harry Potter, or (better example) Quenya, Sindarin or Westron to read Tolkien. It takes time to learn a language and to learn to read it (particularly if for some reason, the written and spoken languages are very different, as they are with English, French and Finnish). If you had to learn Quenya/Sindarin/Westron to read Tolkien, Rowlingish to read Harry Potter, and Dickensian to read Great Expectations, not only would few people read Tolkien/Rowling/Dickens, but also, not much other reading would get done by those who did take the trouble to read them.

In the real world, however, Tolkien for example specifically stated that he kept the amount of Quenya/Sindarin to a minimum, and rendered “Westron” into English, etc., in order to maximize his audience.

You can get both if you are willing to pay for it. A non-trivial peice of software is equally as complex as a manufacturing plant, and thus would take a comparable amount of time just to get brought up to speed on (i.e. you can’t just dive in and start hacking away). But that’s the problem, I think a lot of folks equate “open source” with free when that’s not the case. Most professionals aren’t going to start readily contributing to some software without getting paid to do so.

Completely agree. However, if you have in-house programmers, you don’t necessarily need outside expertise to modify a product, and if you have a closed-source product which uses proprietary formats (which often seems to be the very motivation for closed-source) then if/when the company goes belly-up, you don’t have a means of supporting the product. In such an environment basically the only two possible outcomes are that companies use a variety of different formats, which is inconvenient, or else that a given vendor effectively gains a monopoly, which reduces interoperability problems but also ensures that “the throat” that people would like to choke when things go wrong in effect “gets too thick” for any but the strongest to choke. In that sense open source, relying as it does on open protocols amongst other things, really is the David that goes up against the Goliath that few other combatants have a hope of defeating.

The problem with this statement is you’re confusing hardware with software.

Hardware is inherently proprietary since it’s a manufacturing process.

Software is not “manufacturing”

I can get better collaboration by allowing other people (outside of my company) to work with my software to improve it – I cannot work with other people (outside of my manufacturing plant) to work with my process of manufacturing easily.

I think you are misunderstanding me. I know that hardware is inherently proprietary; that was part of my point! I am simply asking why software is held to a different standard.

The original assertion was that closed source software is evil. I want to know why closed source software is evil and “closed source” hardware isn’t, when the only difference is that software _can_ be open. Is the argument “anything that can be open has to be open, otherwise it’s evil”?

Hardware can be open too. It means access to the blueprints of a machine. Suppose you are a manufacturer, and a supplier of your machines is going out of business. How are you going to repair such a machine then, without access to the blueprints? That’s a bit like reverse-engineering software because you don’t have access to the source code.

“Hardware is inherently proprietary since it’s a manufacturing process.”

It is? There are seemingly dozens or hundreds of open hardware standards that comprises PC architecture. RS232, PATA, SATA, USB, analog 15 pin VGA output, DVI, keyboard layout, etc etc etc.. Computer hardware has a long history of open standards that are collectively improved by the industry at large.

>”Hardware is inherently proprietary since it’s a manufacturing process.”

It is? There are seemingly dozens or hundreds of open hardware standards that comprises PC architecture. RS232, PATA, SATA, USB, analog 15 pin VGA output, DVI, keyboard layout, etc etc etc.. Computer hardware has a long history of open standards that are collectively improved by the industry at large.

While i understand what you are saying i think you missunderstood what he was saying.

My understanding of his comment was that the physical hardware (nothing to do with the protocols associated with it) is inharently proprietary because there is a physical production of a product that must be sold and cannot be free because it costed money to make.

Would you spend a $1000 on a computer then give it away? That is essentially what a hardware manufacturer would be doing.

I also have to say Torvalds is right on the money and I am hard pressed to find a subject matter of any relevance to the world that I disagree with him on. If everybody in OSS was as down to earth and well spoken as Linus, Linux would be quite a massive force in the software industry right now.

“While i understand what you are saying i think you missunderstood what he was saying.

My understanding of his comment was that the physical hardware (nothing to do with the protocols associated with it) is inharently proprietary because there is a physical production of a product that must be sold and cannot be free because it costed money to make.”

The word ‘proprietary’ is an English word that is defined by Merriam-Webster’s online dictionary as:

1 : one that possesses, owns, or holds exclusive right to something; specifically : PROPRIETOR 1

2 : something that is used, produced, or marketed under exclusive legal right of the inventor or maker; specifically : a drug (as a patent medicine) that is protected by secrecy, patent, or copyright against free competition as to name, product, composition, or process of manufacture

Hardware is not inherently proprietary. Is hardware more difficult (costly) to duplicate than digital information, yes that is currently true. His use of the word proprietary was incorrect and that made his statement false.

Software is manufacturing, it’s just that the “raw material” is mostly time.

Would you spend a $1000 on a computer then give it away? That is essentially what a hardware manufacturer would be doing.

Would you spend $1000 worth of your time and then give it away?

For both hardware and software the answer is usually “no”, but in some cases (e.g. where one company is trying to destroy the market that another company relies on) then answer may be “a loss in one area is an acceptable price to pay for a percieved gain in another area”.

For one example, comnsider cable TV companies. Most of them will install the hardware, etc for free (or a severely reduced price), and then build the costs associated with this into the price of subscriptions.

For another example, consider Intel. If they charged $5 extra for each CPU sold, and then used that extra money to pay programmers to write “free” software (like ACPI support, video device drivers and virtualisation support), then they increase the demand for their products and improve their public image. Giving away free software is just smart business.

Another example would be Redhat – charge people for service contracts and use the money to pay people to work on “free” software that improves the demand for their service contracts.

Of course you’ll notice that in all of these examples someone is paying for the “free” stuff…

The only question I have is, why are there so many open source developers (who aren’t affliated with companies that have something to gain) working for free in an attempt to destroy their own careers and the careers of their peers?

It causes the people that paid for the software horrific amounts of grief if for some reason they can no longer use the software they depend on and can find no other way to replace it except with a forklift upgrade (meaning: full replacement).

>It causes the people that paid for the software horrific amounts of grief if for some reason they can no longer use the software they depend on and can find no other way to replace it except with a forklift upgrade (meaning: full replacement).

>This can have business-shattering consequences in some cases.

And? When you’re using something from X, you’re dependent from X, that’s obvious.

If you don’t want to be dependent from X, then either

a- you require that the source from X is held somewhere and that you have access to it, in well specified situation.

b- you only buy X if it is compliant to a standard which allows you to replace X by a competing product.

If a and b is not possible then use an open-source alternative or pay for the development of one if needed.

Nothing at all above, justify calling ‘X is proprietary’ so it is evil. You just have to stay aware of the dependency induced by the usage of a propriety software and act accordingly (or don’t act if either you consider the risk low or the impact of not having X’s software low).

In the same idea if you rent something, the rent contract may stop at some points, it doesn’t mean that ‘renting is evil’.

But until you move to a different type of machine, you can hire a machine shop to look at the parts, and commission a replacement to keep the machine working.

Machines are effectively open source.

Now, let’s assume that the machine was uninspectable. I don’t know, maybe it’s rigged with alarms to alert the company that sold it to you that you were servicing it. Maybe it’s just welded shut so it can’t be repaired.

“Now, let’s assume that the machine was uninspectable. I don’t know, maybe it’s rigged with alarms to alert the company that sold it to you that you were servicing it. Maybe it’s just welded shut so it can’t be repaired.

I’d consider that immoral, and at the very least, somewhat evil.”

Oh come on, you can’t be serious. Many companies (particularly computer companies) do this (make their machine/device tamper resistant or non-user serviceable) so the user can’t deliberately or inadvertently break the machine and launch a warranty claim against the manufacturer, thereby costing the manufacturer money because a stupid or malicious user decides that the manufacturer should pay for their mistake or misdeed.

It is good business sense for the manufacturer to want to prevent unauthorised repair or modification of a machine, at least while it is covered by warranty.

This is hardly “immoral” or “evil”, and to claim that it is cheapens the meaning of these words. Robbing someone at gunpoint and then killing them even after they have given you their money is evil. Making a fraudulent warranty claim is mildly immoral. Not letting someone in on your software / hardware secrets might not be nice, but it is hardly immoral or evil.

Now, there are some manufacturers who make machines etc that are not servicable at all, and are deliberately designed to fail in a relatively short period of time, so that the user then has to buy another one, rather than fixing their old one. This is arguably immoral, because it encourages wastage and causes environmental damage.

But again, I exhort those of you who think closed source software is “evil”, to grow up and put things in perspective. There are far worse things in life than not being able to see someone’s source code.

That is what is happening right now across USA and Europe, a fight to split what is the company property, the software, from what should be viewed as the user property, its data.

It is implicit that the transportation layers must be also open, as in a workgroup environment we are exchanging data all the time, and we can’t do it with proprietary protocols.

I have to agree almost 100 % with Linus, we need a way to stimulate the cooperation and that is what GPL2 give us in a very nice way.

And I have nothing against cooperative work with someone that has a slightly different view of the world but, even if you are practical about that, it is impossible to ignore the politics – in a extreme case he for sure doesn’t want smart bombs with software running on Linux dropped on his beloved Finland.

I take it you folks are mainly talking about software that is written for general use to solve a set of general tasks (a word processor, operating system, or payroll package, for example).

However, most software developed these days is in-house software, firmware, etc., meaning it’s written for a custom-tailored purpose inside a large company or a large government agency, and is usually very tightly intertwined with that specific organization’s set of business rules or a specific set of hardware.

Most of that stuff is worthless in other organizations, and some of the stuff I’ve worked on over the years was dependent on systems software extensions which only existed at the specific company I was working for.

There isn’t much point to releasing such software as open source. In some cases, nobody else on the planet is going to have a use for it, and they might not even be able to compile it, much less run it anywhere…

If you never release this software under any license, then it is NOT proprietary software, it is PRIVATE software and RMS is perfectly OK with that. The reason is that, by not releasing it, you don’t create the social problem of “help your neighbor VS respect the license”.

cat > rant.txt << EOR

Personally, my issue with proprietary software is the same as with software patents, just on a smaller scale. Each time a piece of “intellectual property” is claimed, a small piece of the noosphere (the universe of ideas, roughly speaking) becomes unavailable for the free exchange and combination of ideas that is so deep in human nature. This restriction involves someone partially controls my thoughts. When I see a good idea (a hardware design, a recipe, a piece of code,..) it becomes part of my mind, and I may be inclined to tell about it to other people. Thought is followed by communication, and efficient communication ultimately becomes redistribution. Proprietary licenses force people to always make sure that their thinking and communication process is never “too efficient”, lest they may be sued.

When talking about software licenses, the “cooking recipe” metaphor is often used. My stance is that I don’t mind if you sell me some delicious food and won’t show me the recipe, but I do mind if you make the recipe public and then threaten to sue everyone who follows it, or even comes “too close” to following it.

BTW, I don’t blame so much proprietary software firms as bad legislation and myopic citizens who tolerate or even support it.

So you’re saying proprietary software is evil since it is harder to check for backdoors? Wouldn’t that make all programs written in C evil compared to java programs since it is harder to check them for backdoors as well?

To someone that has an interest in the software, whether it is OSS or not doesn’t much matter. You are right in that it is easier to find bugs when you can look at the code directly. This also often means the bugs get fixed faster (but not always).

Look at how quickly bugs are found in OSS. A good example would be where someone hacked the wordpress.org server and manually added a backdoor. Through code review, the obvious backdoor was quickly found and a new release issued:

So (in general) OSS is a double edged sword in that bugs are found and fixed much faster than closed counterparts. Take a look at this, the numbers are quite impressive http://scan.coverity.com/rungAll.html

Also, anyone who has used IDA Pro for a few months and knows C + ASM can find bugs in windows software fairly easily. It doesn’t take much experience. Something as simple as a fuzzer works just as well for finding exploitable bugs in closed or open source software.

LMH, the entity behind the Month of Kernel Bugs and the Month of Apple Bugs happens to prefer using fuzzers to find exploitable holes in software.

That goes without saying that errors in code can be easily overlooked such as the assignment and comparison operators (= vs. ==).

I’m sure others might remember this when the Linux kernel got hacked with two lines of code that would have meant an instant root under a certain condition that was easy to meet.

But it wasn’t a human that caught this – it was the source repository software that caught it. The repository then alerted a human.

So let’s say this – open source and closed source from trusted companies are pretty much equal. Source integrity is only as good as the programmers or the repository maintaining it – doesn’t matter if it’s opened OR closed.

Torvalds believes that Open Source methodology is developmentally superior.

Stallman believes that Open Source methodology is morally and ethically superior.

Any more than that and I’d be reiterating what he says in the article.

Of course, since Torvalds’ Linux is the most prominent member of the Open Source movement, and attracts a lot of users (and developers) who share Stallman’s ideas… well, people seem to be continually surprised when Torvalds appears to be more cool to the issue of Open versus Proprietary than Stallman.

Does he share Stallman’s other beliefs, about the right to use a program when you want, where you want, and edit it if you want to? Probably, but probably not in the same way or degree as Stallman.

I like how he equates Open Source vs Proprietary to Science versus Alchemy. Just think what would happen if everyone who wanted to build a computer had to re-discover all the physics leading up to transistors… or worse, if the physics had been patented such that even if you WERE smart enough to figure them out, you wouldn’t be allowed to do anything with them.

The GPL3 lacks some of the modularity of the GPL2. It goes beyond issues of source code and into things about the hardware it runs on. I can appreciate the need to do away with DRM, but why can’t that be decided by something other than software? It’s not like companies are racing to produce DRM with GPL code, and they’re going to try whether they use GPL code or not.

What I would personally like to see is just a cleaned-up version of the GPL2 — why deviate drastically from a license proven in court? Are we ready to migrate the FLOSS world to a license with clauses that hasn’t been tested in court?

If we could have GPL2, but added language regarding patents (especially preventing proxy patent shields like the MS-Novell deal), I think that’d be best. I also like the premise in GPL3 of open source web services — as it stands today, you can have a “closed source” web service built using open GPL code, but since you’re not redistributing the code per se, just the service, you don’t have to publish your contributions. It would be nice to see this amended in such a way that some web services can stick to the GPL2 way (that is remain closed) but others, through the use of a special “download source” service, can guarantee no one can take their web application and enhance it and keep the changes to themselves.

Does anyone know why RMS believes closed source software is evil? Perhaps even if I don’t agree with him, hearing his arguments could raise some valid points all the same. He’s actually quite a brilliant guy, and I have a lot of respect for him, but at the same time, I think he’s a wee bit insane.

I guess it’s a bit like “treat others as you would like to be treated” — some people call those immoral who fail to follow this rule while some other people think it’s ridiculous to ask that everyone should follow such moral ideals.

I guess it’s a bit like “treat others as you would like to be treated” — some people call those immoral who fail to follow this rule while some other people think it’s ridiculous to ask that everyone should follow such moral ideals.

The problem is that Stallman isn’t saying “treat others as you’d like to be treated,” he’s saying “treat me the way I want to be treated.” There’s nothing overly moral about that.

The “four freedoms” of Roosevelt are morally justifiable things to demand everyone have… the “four freedoms” of Stallman are inane demands from a selfish, demented mind. Here, I’ll show you:

1) The freedom to run the program for any purpose.

That sounds fine, doesn’t it? Unfortunately, it’s not a “nice” moral rule. “Free to use the program in any way that causes no harm or hindrance” maybe, but “for any purpose” is not justifiable. If I use a port scanner for my own network to secure it, or as a learning tool, fine, great, wonderful. If I use it as a tool for breaking into another server and destroying a persons work… well, that’s included in Stallman’s “freedoms,” and that’s rather contrary to your “as you’d like to be treated” ideal, isn’t it? What about the “moral rights” of the person who’s life I just damaged?

2) The freedom to study how the program works, and adapt it to your needs.

I’m sorry, but what part of “being allowed to use the hard work of other people just because you don’t want to spend the time to duplicate it” counts as an inalienable human right? Yes, it’s nice to be able to continue to use the software you purchase, just as it’s nice to be able to continue to use music you purchase in whatever way you see fit, but there are many cases where this “freedom” becomes a burden when used for selfish reasons. Here’s just one example: Let’s assume you can study the software emulation layer in the PS3, and modify it so that the copy protection routines are no longer present… well, that may fit your needs, but it also aids in game piracy, and the company that is already losing money on console production then goes the way of Sega with the dreamcast. Great freedom there, isn’t it? Just because you want something doesn’t give you a right to do it. We don’t add this “free to use it any way you see fit and change it however you want” clause to anything else?

3) The freedom to redistribute copies so you can help your neighbor.

Erm, right… and what prevents me from simply informing my “neighbor” as to where it was I located the software to begin with? This sort of counts as “give it away for free no matter what”.. i.e. “The freedom to use the software as if nobody paid to have it developed.”

4) The freedom to improve the program, and release your improvements to the public, so that the whole community benefits.

Wait wait wait… the freedom to… son of a… you mean I’m free to do that? That sounds good, doesn’t it? Too bad in this case it’s more like saying “You are free to not kill people!” in that by “free to” they really mean “have to.” Mmm, mmm, that’s some good market speak.

Now, lets look at how Stallman and his ideals (GPL) actually stack up to these supposed freedoms.

1) You are free to run the program for whatever you want, provided of course you aren’t, say, using the GCC package to compile closed source, proprietary code… because then it’s “evil”.

2) Yes, you are free to adapt the software to your needs, whatever they may be, as long as your needs don’t include linking with non-GPL libraries, or trying to fit your release onto one single CD when you don’t have enough extra room for the source code, or making a living off of the software you worked to make (Redhat doesn’t sell linux, they sell “support” for it… just as an example), or, you know, enclosing it with something with an NDA preventing GPLing, or really just about any other use that isn’t strictly laid out in the GPL… Oh, silly me, I guess I read “free to use as you need” as “free to use as you need” and not “free to use as I tell you is acceptable!”… Golly, how stupid of me to expect Stallman and the GPL to stand up to their own “ideals.”

3) You are free to redistribute copies to all your neighbors… provided you also give them all the source code, tell them where you got it, point out who owns the copyright, and make sure they don’t do anything evil like linking with an MPL browser.

4) You are… free to… distribute changes… help community… Being required to do something and being free to do something are two different things. I am free to go to McDonalds for lunch, if I choose to… but that’s quite different from having to go to McDonalds every single day and being sued if I choose not to?

I’d say the main purpose of the “four freedoms” is to make it clear what one means when talking about “free software”. You may or may not agree on whether people have the right to demand these freedoms, but in any case they are useful to decide whether a particular license is “free” or “non-free” in the FSF sense.

You seem to be a bit confused about the terms and conditions of the GPL. Let’s address your points:

“1) The freedom to run the program for any purpose.

That sounds fine, doesn’t it? Unfortunately, it’s not a “nice” moral rule. “Free to use the program in any way that causes no harm or hindrance” maybe, but “for any purpose” is not justifiable.”

Of course, that should be read as “no additional restrictions” beyond what the law mandates.

“2) The freedom to study how the program works, and adapt it to your needs. [..]

Here’s just one example: Let’s assume you can study the software emulation layer in the PS3, and modify it so that the copy protection routines are no longer present… well, that may fit your needs, but it also aids in game piracy, and the company that is already losing money on console production then goes the way of Sega with the dreamcast. ”

But here you seem to be begging the question. You are criticizing one of the four freedoms because it may interfere with a business model which is clearly based on restricting the four freedoms. Anyway, you may choose a better example (for instance, turn a benign program into a trojan horse and use it to attack a computer) and the answer would be, again, “no ADDITIONAL restrictions”.

“4) The freedom to improve the program, and release your improvements to the public, so that the whole community benefits. [..]

in that by “free to” they really mean “have to.” Mmm, mmm, that’s some good market speak. ”

You are free to keep the changes to yourself. If you think the GPL demands that you publish all your changes, you are wrong on that one.

“1) You are free to run the program for whatever you want, provided of course you aren’t, say, using the GCC package to compile closed source, proprietary code… because then it’s “evil”. ”

That’s clearly incorrect. You can use GCC to compile your programs without any effect on the licensing terms of those programs. Just ask, say, the FreeBSD people.

The rest of your post are complaints about not being free to impose your own licensing restrictions on the work of others who released their software under the GPL. Well, you can always spend the time to duplicate them. It seems fair to me.

AFAIK, the reasoning is that since code is an infinite resource that can be given away for free, there is no reason not to have it open. Choosing to do so only results in people not being able to modify it, etc. and is therefore selfish and done to harm the consumer while helping the developer (aka evil).

Here are the four freedoms he thinks it is evil to violate. My personal view is that these freedoms are nice, but violations aren’t necessarily evil. Stallman actually reminds me a lot of Bush, with the whole “You’re either with me or evil” approach.

* Freedom 0: The freedom to run the program for any purpose.

* Freedom 1: The freedom to study and modify the program.

* Freedom 2: The freedom to copy the program so you can help your neighbor.

* Freedom 3: The freedom to improve the program, and release your improvements to the public, so that the whole community benefits.

Those freedoms sound reasonable to me, but I also think that one should also have the freedom to hide their source in order to gain a competitive advantage, at least for a time. I think it’s perfectly right for a developer to want to get money for their work, without having to build a service model around their code or do customization work as their only viable means of making money from their work.

However, I would consider it unethical to keep your code closed in order to extract a continual toll on the use of your software because you’ve managed to lock in enough customers. After a while, enough is enough, and code should be opened (especially if your software becomes pervasive as a de facto standard), with the developer ready to move on to a new project rather than just sitting on their laurels forever and milking a cash cow.

Is that evil? Could be. How can Stallman talk about “evil” anyways when he’s atheist? Doesn’t morality go beyond the ethics of what’s practically beneficial to the species and proper behavior and more into some sort of realm of divine rights based on faith?

There’s nothing inherently religious about morality, it’s just that religions have their own sense of morality contained within them. In other words, religion shapes morality but doesn’t cause it’s existence.

Just because you believe it is evil to kill someone, doesn’t mean you have to believe in God.

Thinking that killing is ethically or morally wrong is not quite the same thing as thinking that killing is somehow “evil”.

In my head, “ethically or morally wrong” is pretty much equivalent to “evil.” Just with the connotation that using the word evil means something is very, very wrong and not using the word denotes something a little bit less severe. I suppose it can take on other meanings for different people though.

Sometimes killing has a purpose. Would killing Satan be an evil act? 🙂

Hmm, maybe getting a bit off topic here, but I always thought Satan would be as immortal as God, making killing him impossible. But if you could, then I would say that would not be evil.

Freedom 0: should someone be free to run a program to raid peoples bank accounts, or install trojans or viruses, or hack into confidential files? Surely there are some purposes to which software can be put that are more “evil” than being restricted in some aspects of software use. Some purposes are quite evil, and running software of any sort is a privilege, not a right.

Freedom 1: Sure, freedom to study the program may be justifiable in some situations, and while it might sound nice to be able to modify programs to suit yourself, there are many situations in which it is highly undesirable to have people tinkering with software. Such as medical software, national security etc…

Freedom 2: Well, it might be nice to copy the program to help your neighbour, but not if it is at the expense of the livelihood of the author. IF someone makes money by selling copies of their software, then their business will be undermined if people can get the same software for free. Surely depriving someone of an income to support their family is more evil than having to pay to benefit from someone else’s hard work.

Freedom 3: That sounds great, but again, if it undermines someone’s income stream, then it is not so good.

I find this concept of one type of software license being “evil” another “good” utterly ludicrous.

Killing all of the children in a town and burning it to the ground is evil. Selling software and not giving the source code away is at absolute worst a bit rude (if that), nothing more.

People who get so hung up on software licenses need to get some perspective – having access to computers and free software is a luxury, not a basic human right, and claiming otherwise only cheapens the suffering of those in the third world who are lucky to find clean drinking water, let alone electricity to run a computer.

I think it is important to understand the inherent conflict between the parties in question here – Free Software vs. Open Source Software. I’m sure many can do a better job that I, but I don’t see it clarified here, so I will do it.

Philosophy #1 – Software must be Free (as in Liberty). Anything that causes the user to have less freedom is “bad”.

Philosophy #2 – Software is just a tool, and often community-developed software, i.e., Open Source Software, is a useful tool. Some would even say generally it is better. But “goodness” is defined as the usefulness of the tool. Sometimes closed-source software (i.e., Non-free) is “better”, and therefore to be used.

These are incompatible philosophies. At times they can work together; at other times they will clash.

Now, two of my own comments:

1. Many are taking advantage of the great sacrifice of the Free Software movement, but when it is to their advantage, they would easily cast it off.

2. While I applaud Free software, I believe there is a real economic problem to be solved. As a company, I should be able to invest millions in making a Free as in Freedom game and yet still make money. As it stands, while I can charge $50 dollars for my Free as in Freedom game, that one user can turn around and offer it as a free download on their website. Now no one pays $50 for my game. This is why I believe the Free Software movement can only truly thrive in a different economic system – one not based on hiding secrets (patents, IP, etc), but where contributions by individuals and organizations are rewarded automatically by society – not by holding people hostage.

It can not be evil,good, have freedom, or be enslaved. Groups like the FSF and FLOSS, in my opinion, are just hurting themselves running around like pseudo hippies shouting “software wants to be free!”

To most people telling them that making/selling/using closed source is evil and immoral, is like telling someone that using a hammer is evil and immoral. To most people software is a tool and nothing more. Its rare to find pro OSS information nowadays that isn’t littered with how closed source is evil and non-free, as if software was some sort of sentient being or even an animal.

If a person hits you on the head with a hammer, I agree the hammer is not evil. I would disagree with you in saying nothing evil has happened.

Your straw-man argument is weak – no one is arguing that a particular arrangement of 0’s and 1’s is evil, but the practice of restricting these 0’s and 1’s – and who owns them – is what is in question. I think that hardly needed to be said.

I never said that you can’t do any thing evil with software. Or that the company that makes them can’t be evil for other reasons. If someone wanted to they could make a virus that was under the gpl that doesn’t make the gpl evil anymore then a closed source virus makes closed source evil.

You could talk about why you think Microsoft or Apple is evil why someone should avoid their products because of that, and that is a reasonable thing to talk about. Just as it would be to get people to boycott a company that makes hammers do to them having unsafe work conditions or whatever. But claiming that all closed source and all people that make them are evil just makes people go huh?

Even with anti-Microsoft stuff its hard to find real reasons why people think they are evil that they can back up thats not closed source is evil!

OK so lets say that MS and Apple are “evil” and I shouldn’t use them. Whats wrong with Parrells, Transgaming, Blizzard, Adobe, Nvidia, ATI and countless other software makers that make closed source? To most people nothing but almost everyday online I read some FLOSS propaganda about how I shouldn’t only do to them not being GPL.

There are good reasons to use open software. If you want people too see them you talk about the advantages of that, not how you should use it only cause of how evil closed source is.

There are good reasons to use open software. If you want people too see them you talk about the advantages of that

This presumes that you are from the Philosophy #2 (It is the utility of software that is of most importance) that I mentioned above. This position evaluates software solely on its features. Do not forget that there are those from Philosphy #1 (it is the freedom of software that is most importance, not its utility) and thus you argument would not be valid to them.

To say that software is to be evaluated solely on its features or usefullness is to “beg the question” that we are discussing.

The reason why people view proprietary software as evil is because it goes directly against what we have come to understand as freedom with regards to physical property. You wouldn’t suggest that its ok for me to sell you a car and tell you that you can only drive it between 9am and 5pm. Yet these type of restrictions are prevalent in software EULA’s. Between EULA’s and patents, companies strip away basic freedoms that users would normally have. Lets do a short exercise with what ifs. Lets assume proprietary software is not inherantly evil. So why not open the source. Its copy righted. Its already illegal to use it in your product. And if everyone was forced to provide the source code, you couldnt hide the fact that you stole it anyway, so that point is mute. So why close the source? To keep people from seeing it. Why? Because you want to restrict what they do with the software. You cant change anything with the source. Therefore its logical to assume that the only reason to close source software is to restrict users. As such, close source software is inherently evil.

Also, software is becoming one of the “must have” things in life. It opens up so many avenues to better one’s self through education that having it all controlled by a single entity is dangerous. Like having all the news stations in the country owned by the same company. It just isnt healthy.

Thats an extremist view of the situation, but I can understand why RMS sees it that way. Personally, I would settle for a happy medium. Unfortuately, MS has made controlling the market the entire life blood of their company, so they will fight change to the bitter end.

You wouldn’t suggest that its ok for me to sell you a car and tell you that you can only drive it between 9am and 5pm.

I would say that it exactly okay to sell that. If people want to pay your price for it (and it better be a very nice car in those hours), then good for you! Nobody’s hurt by you putting your product on the market, and who knows, it just may be what people need.

You’re looking at it wrong. Creators have the right to sell only what they want to sell. Customers do not have the right to force companies to sell what they do not want to sell; however, they have the right to take their business elsewhere and buy from other companies.

why close the source? To keep people from seeing it. Why? Because you want to restrict what they do with the software. You cant change anything with the source. Therefore its logical to assume that the only reason to close source software is to restrict users.

That’s a bad assumption to make. Over 99.99% of users cannot change the programs they use in any way, much less having the skill to make any meaningful change. That’s less than one in ten thousand; the age of computer user as computer programmer ended long ago with the advent of the user-friendly GUI.

In the meantime, unethical users are using any exploit they find in the code to attack users of that software (and making a fast buck off of it, if at all possible), and unethical companies are copying the software, ripping off the work of others for profit without paying for it. And the original company can’t do anything about it, except maybe close their source again and hope the mirrors of their repositories die off soon.

Closed source software is not closed source to hurt the users… any company that did hurt its customers would lose them rapidly. Closed source software is closed source to protect the customers from malicious users, and to protect the company (or just the author, if it’s a single-person organization) from unethical companies.

Also, software is becoming one of the “must have” things in life. It opens up so many avenues to better one’s self through education that having it all controlled by a single entity is dangerous.

Nobody’s arguing that. Luckily for us, no one company does, so that point is moot.

The big assumption you’re making is that there is a free and open market where consumers can shop. The real world doesn’t always work like that. Take RIAA and the music industry. They’re hurting users (how can you not think that prosecuting 87-year-old grandmas isn’t) and everyone hates them but there isn’t any real competition so they keep making money hand over fist.

The big assumption you’re making is that there is a free and open market where consumers can shop.

We have that, in America; I can’t speak for Europe. That’s the nice thing about a laissez-faire capitalism: except for the 20 years a patent gives you, there are no monopolies, and no matter how big you get, there is always competition.

Oh, and if you think there’s no alternative to RIAA, go here: http://www.riaaradar.com/ On the artist’s end, there are other legal aid groups for musicians that don’t resort to suing the elderly, young, and dead to get their funding. (My roommate is a musician, so I occasionally get to hear long rants on this subject…)

I gotta agree with some of the others. Its not Open or Closed thats the problem its the patents that are the real problem. I mean really think about it what if Ford had a patent on the steering wheel and refused to let anyone else use it? Sure we could come up with another way to do it in other cars but it would make life harder for everyone.

> Customers do not have the right to force companies to sell what they do not want to sell; however, they have the right to take their business elsewhere and buy from other companies.

Businesses should listen to a customer’s demands if it is within reason.

> Over 99.99% of users cannot change the programs they use in any way, much less having the skill to make any meaningful change.

Doesn’t matter if the user doesn’t know how to interpret and modify source code. This problem is solved by hiring a software developer and getting consultation. This is no different to hiring a solicitor for consultation of legal matters; sure a layman can figure out legal matters for themselves and not spend as much money but the layman would get professional results from someone within the profession. With free software, the user is not prevented from empowering themselves.

With proprietary software, user is not allowed to empower themselves. They must first get permission from the vendor before any improvements are made. This forces the user to become dependant upon the vendor as they aren’t allowed to go elsewhere to get that particular software fixed.

> Closed source software is closed source to protect the customers from malicious users, and to protect the company (or just the author, if it’s a single-person organization) from unethical companies.

Closed source software is closed source to protect the vendor’s interest. This interest is usually maintaining a monopoly to selling usage licences to users. One method of maintaining that monopoly is the use of obsfucated file formats and protocols. Another way is to force dependancy on the vendor. The vendor of the software controls the user’s computer because the user must get permission to change the way the software operates. Another reason for not distributing the source is to maintain a monopoly of the knowledge contained in the code. The knowledge contained in closed source software is secret knowledge and so, it is a mystery as to what is occuring when the user operates the software; hypotheses can be speculated but it remains as speculation without an audit.

> Closed source software is not closed source to hurt the users

And yet, I’ve been hurt numerous times by vendors refusal to allow my business to audit and improve the code. In my opinion as an experienced software developer, I’m sure that it would have taken no time to locate and fix simple errors that cost the business in terms of time. I’ve dealt with buggy credit card transaction software, buggy software based print servers, and music CDs that compromised my computer’s integrity. Though I’ve tried to get the software improved through official channels, I failed to obtain permission under reasonable terms. If I had the right to hire a third party to audit the code for faults, I don’t think my business would have lost so much money and time. Migrating to a functionally superior software would just perpetuate the problems of helplessness.

> any company that did hurt its customers would lose them rapidly

Microsoft is one example that defies this otherwise obvious statement. I’ve had times when working on documents using MS office tools only to have them crash on me and lose my work. It doesn’t matter if I lost 10 minutes or 10 hours of work, that work is gone. And yet, people believe it to be an acceptable risk to conduct business using unknown processes. They believe it to be acceptable to work around the software’s limitations over improving the software’s operation.

I admire L. Torvalds engineering skills, but he is beginning to sound like a broken record.

He is too smart not to know that the reason why the GPL V.3 is important is that patents are the only real potential roadblock to free software.

Ignoring a problem does not make it go away and attempting to ostracize GPL V.3 proponents who come from all walks of life and all social milieus (government, industry, education) is at best foolish and at worst it supports the message that Microsoft FUD machine wants to set about the GPL.

The comments in this thread are a good example of why this debate isn’t ever going to be resolved. It’s not a matter of right or wrong; it’s a matter of perspective. Whether you embrace open source or closed source is based more on your underlying world view than on any real merits of the licensing model.

The fact is, many closed source development efforts results in good code that makes customers happy. Many closed source projects fail. Many open source projects result in good code that makes users happy. Many open source projects fail. The averages seem about the same, so calling one better than the other is just silly.

I’ve posted this before when this topic comes up as it does so frequently:

Linux has very many contributors, who all contributed via GPL v2. The license says GPL2 only, and thus Linus cannot change it without permission of all contributors or identification of non-agreable contributers and clean room reimplementation of those parts.

Whilst Linus view of gpl3 is interesting, it does also strikes me as irrelevant from the kernels perspective.

I like how freedom 3 is basically saying that it’s evil or immoral if I don’t help ‘my neighbor’ steal something that isn’t expensive.

For that matter, my ‘Hello World’ programs are not expensive. A full Video editing suit using the latest hardware and techniques is expensive to make. So I can understand a desire to recover your costs on making it. Even if distributing it may be somewhat cheap. Everyone seems to forget that part…..

How do we do that? If I sell it and give away the source (to satisfy freedom x,y) I have higher % of pirates and I loose $ and it raises the cost to the community because of more law enforcement. Or I can sell the binary, and hope that is enough to discourage casual warez. Where’s the evil?