Harsh, perhaps (a function of his brutal honesty). But, I don't think you would find more than 1 out of 10 people who would agree with you that he's selfish. He did license the linux kernel via the GPL, and, he's dedicated pretty much his entire software to writing software that you can freely copy, modify, and distribute.
Here is what Linus Torvalds said on the topic in the other interview:
"In many ways, I actually think the real idea of open source is for it to allow everybody to be "selfish", not about trying to get everybody to contribute to some common good. In other words, I do not see open source as some big goody-goody "let's all sing kumbaya around the campfire and make the world a better place". No, open source only really works if everybody is contributing for their own selfish reasons."
Link to the whole interview:
http://www.bbc.co.uk/news/technology-18419231 .
Notice that he uses the word, "Selfish" in quotes to make it clear that he's not using the word in the way we commonly define it.
There's a very large difference between Linus's definition of "Selfish" (Which is basically people scratching their own itch, serving their own need) - and societies definition of selfish, "MW Def: concerned excessively or exclusively with oneself : seeking or concentrating on one's own advantage, pleasure, or well-being without regard for others"
To some degree, all human behavior is "selfish" - we're all driven to do those things that bring us pleasure. The question is, in doing so, do we do so exclusively, and without regard for others. Traditionally, when we use "selfish" in the pejorative, that's the differentiator in how we use the word and Linus does.
The genius of the GPL, of course, is that it aligns ones own self interest with those of a greater community. You can use the software as much as you want, just as long as you contribute back your changes to others. An enforced quid-pro-quo, if you will.
I absolutely understand the argument that Linus is making, and I agree with him - that, long term, people need to be driven by the need to satisfy some personal need, not some greater community good. But suggesting that contributing software to the GPL is selfish is using language in the same way that suggesting affirmative action is racist. This is only true if we stretch the definitions of the words selfish and racist.
I think I agree with you, but just to debate a bit: couldn't you contribute to open source for entirely selfish reasons?
For example:
- There is no existing project that completely meets my needs. This one almost does. I can patch it, but maintaining a separate fork would be a lot of trouble. Therefore, the easiest thing to get what I want is to contribute a patch to the main project.
- I want to prove to the world that I'm a good developer so that I can achieve my career goals. I can't easily show off my closed-source code. Therefore, the easiest way to get what I want is to release good open source code.
- I like having lots of open source software available for free, and I want to keep that paradigm functioning, therefore I view contributing as an investment with a good payoff for me. (This one is a bit more of a stretch.)
I think you can contribute to open source for truly selfish reasons, and that can work out well for everyone. It's similar to how you can run a business purely for profit, and as a necessary means to that end, provide a good product for a good price.
However, in practice, I personally contribute to open source partly for selfish reasons and partly out of altruistic ones.
It's possible, but I find those that are truly, "selfish" (and I don't mean this in a bad way) - such as companies that don't want to share the work they've done, but want to take advantage of the work of others, tend to go with a BSD licensed project where possible. That way they can build their appliance on to of the BSD stack, without sharing any of the technology they've built.
> The genius of the GPL, of course, is that it aligns ones own ...
I agree. That's basically what Linus also said in the continuation of the quoted interview. I also think that being "selfish" (to some healthy degree) is not a bad thing per se. If we put it in a proper context (like GPL) it can have better results than many truly altruistic efforts in the same direction. It is simply more natural.
>> "open source only really works if everybody is contributing for their own selfish reasons."
One interpretation of this statement is that, if I'm trying to contribute altruistically by solving a problem I don't personally have, it may be that nobody has that problem, or it may be that my solution doesn't help those who do.
Whereas if I solve a problem I have in a way that satisfies me, there's at least one data point to say that it's a good solution, and it's likely that others will benefit.
The common phrase for this is "scratch your own itch."
Good, scratch your itch is a workable mantra, if everybody modifying open-source is the goal. If the goal is to find useful software for cheap to solve your problem, then open-source generally falls flat. This from a guy who's been looking for open solutions for decades (me).
Open software is often narrow in scope, tied to some preconceived notion of how its going to be used, and spotty in implementation. E.g. Gimp, which is useful for some but useless to me - I have GB of layered images that won't import into GIMP except as flattened bitmaps - I'll need to continue editing my layers in future. I could write my own image importer for GIMP, but hey! paying for a PS license is cheaper and faster.
Other examples: file format interpreting libraries. I've used them lots. Each time I have to untangle the actual code that interprets formats, from the cruft around it that assumes I'm going to run a command-line script, or link with a certain runtime, or have a dialog-based interface, or whatever was the itch somebody scratched when they created the code.
If its in nobodies best interest to separate the actual IP from the scaffolding that surrounds it, then Open Source is delegated to hobby projects by people with time to burn.
I agree that there are needs open source software doesn't tend to fill. The question wasn't "does open source solve all software problems?", though. It was "does open source need altruistic contributors in order to succeed?"
Maybe more altruism would make Gimp fit your use cases, but I doubt it. Some work just won't get done without a profit motive.
I only need a smidge more altruism! Just, please, separate the IP in your project from the boilerplate cruft. So users can take the whole wad just like you use it, or take the gem inside and use it again.
Agreed. Of course, "harsh" is a relative term. But I think if most programmers and devs could see all of what Linus has put up with over the years on the LKML spread before them, they'd quickly reassess the meaning of "patience."
Harsh, perhaps (a function of his brutal honesty). But, I don't think you would find more than 1 out of 10 people who would agree with you that he's selfish. He did license the linux kernel via the GPL, and, he's dedicated pretty much his entire software to writing software that you can freely copy, modify, and distribute.