Google and Facebook would never exist the way they do today without the free software movement. Both of them rely on a huge stack of open-source technology. Stallman's ideas are what makes it possible for a college kid to run a web startup today essentially for free.
Stallman's ideas are what makes it possible for a college kid to run a web
startup today essentially for free.
With lots and lots of limitations the GPL license imposes on him... I think the world would be a better place with less GPL and more BSD/Apache/... - He did great things, but many of his ideas are old and frankly, ridiculous.
I submitted this link a while back that has a great discussion about what people think of GPS's limitations: 'Why you should use a BSD style license for your Open Source Project' http://news.ycombinator.com/item?id=3402346
Read the linked HN discussion (and also the original FreeBSD.org article). As an example, You can't (technically) use GPL'd code inside your iOS application.
GPL is not the greatest license, that's why they created LGPL (to remove some of its stupid restrictions) and even that wasn't enough...
> You can't (technically) use GPL'd code inside your iOS application.
Web startups don't generally build iOS apps, they build web apps.
> GPL is not the greatest license, that's why they created LGPL (to remove some of its stupid restrictions) and even that wasn't enough...
Enough for whom? Microsoft? I know it's hard to believe, but some people do not have "allow companies to benefit from my work without giving back anything in return" as their top priority.
Sure you can - as long as you abide by the GPL and release your own software under the GPL. iOS libraries aren't GPL, but that's no problem as the GPL allows you to link against non-GPL libraries if they are part of the operating system.
The only problem is that Apple doesn't allow you to publish GPL'ed software on their market. But that's not the fault of the GPL.
> "Web startups don't generally build iOS apps, they build web apps."
That's a silly distinction to make - we have been moving towards this for years now, and we're already there - we are in an age where a single web service can have many clients, beyond browsers.
I suppose Amazon.com isn't a web company because they have an iOS app. Nor Facebook. Nor Google. Nor AirBnb. Nor...
We have had client apps written in languages with no memory management for decades. The value of the web is that it provides a widely supported API that is fairly "safe" to program in.
And with the exception of AirBnb (which is somewhat out of place in your list for other reasons) none of those web companies wrote an iOS app until they became well-established players. In fact, they're all older than iOS.
The iOS example was just to name one of many limitations of using GPL code.
> Enough for whom? Microsoft?
No, for developers themselves. Dynamic vs. static linking mess etc.
> ...some people do not have "allow companies
to benefit from my work without giving back
anything in return" as their top priority.
But in reality, that doesn't happen a lot - to name a few on top of my head: Webkit, PostgreSQL, Minix, LaTeX, Mozilla's softwares (to some extent), Apache and MIT's softwares and many other applications (and PHP, Python and Lua if I'm not mistaken).
It's like giving others a choice to be a bad guy or a good guy. In many cases, given the choice, people would contribute back to the community.
>The iOS example was just to name one of many limitations of using GPL code.
Why do you consider this a limitation of GPL, rather than of iOS?
> No, for developers themselves. Dynamic vs. static linking mess etc.
Can you explain this? It is the nature of closed-source libraries that deny us the freedom to modify them to our own ends or link them into GPL applications.
I know all of these regarding software which is deployed on someone else's hardware (iOS, embedded, etc); I wanted to know why the GPL is a problem for someone doing a web startup, which is the original point you made.
Nowadays most web startups don't do just web clients, they tend to create native clients for each platform. A web startup for sharing photos will fail on iOS if they provide only a web app. And even if you're creating just a web client, AGPL might still bite you.
I call BS. Most web startups don't do web clients. nknight in this thread agrees with me. Do you have any evidence to back your claim, or are you making up this statistic?
I specifically pointed out that using AGPL "might be a problem", so your inclusion here looks like it's evading your original comment concerning the GPL and web startups I ask again, what limitations does the GPL license place on a web startup?
You linked to an earlier HN discussion. Neither it nor the linked-to page mentions iOS or iPhone development, which seems to be your main concern now. They look like the standard random points that appears in any discussion of BSD v. GPL, so you'll need to point out the real issues.
Then again, you said "GPL is not the greatest license, that's why they created LGPL (to remove some of its stupid restrictions)" which is completely wrong. The "Why you shouldn't use the LGPL" document from the FSF says "The most common case is when a free library's features are readily available for proprietary software through other alternative libraries. In that case, the library cannot give free software any particular advantage, so it is better to use the Lesser GPL for that library." Even the title alone should tell you that LGPL is not meant as successor or improvement to the LGPL.
This leads me to believe that you don't know the issues and are winging it.
> The iOS example was just to name one of many limitations of using GPL code.
And is utterly irrelevant to the question that was asked.
> No, for developers themselves. Dynamic vs. static linking mess etc.
What mess? The requirements of the LGPL are clear, and in most cases quite trivial to meet.
> But in reality, that doesn't happen a lot - to name a few on top of my head: Webkit, PostgreSQL, Minix, LaTeX, Mozilla's softwares (to some extent), Apache and MIT's softwares and many other applications (and PHP, Python and Lua if I'm not mistaken).
All you've done is name some projects that happen to use non-GPL licenses in whole or part. You don't think companies take their output and use them in their own products without contributing back?
I have to ask, do you actually work in the software industry? Because it's not just common, it's pretty much universal to take liberally-licensed code, use it in a proprietary product, and give nothing back to anyone. Can you come up with companies that do contribute at least something back? Sure, but they're not the majority.
> It's like giving others a choice to be a bad guy or a good guy. In many cases, given the choice, people would contribute back to the community.
Actually, it's stating that they can use certain code under certain conditions. This, too, is universal, but more often the condition is "give me a bunch of money, don't tell anyone what's in the box, and if you become successful, give me a bunch more money".
Somehow, some set of people like yourself have found it in themselves to be offended by the notion that people might want to bargain with something other than currency.
I'm sorry. Maybe the iOS app was irrelevant to his/her point. But I think most web startups would want to create iOS clients too, and that's how GPL might be a limitation to them.
> I have to ask, do you actually work in the software industry?
No, I'm just a student/programmer. I mean I'm not working in an IT department in a big company, so you've got a point there that I might not be realistic.
> All you've done is name some projects that happen to use non-GPL licenses in whole or part. You don't think companies take their output and use them in their own products without contributing back?
I named some non-GPL projects that big companies are contributing to them. And I think I missed LLVM and Clang (and the amazing static analyzer) that Apple is contributing to.
Google, Apache, Apple Yahoo, ... (even IBM) are all contributing to non-GPL open source projects - not because they have to, but because it's good for their business and they will benefit from that, and as a direct result of that, we (the developers) benefit too. <----- MY MAIN POINT
What I'm saying is this: If Webkit was (pure) GPL, do you think Apple would even consider using it in the first place? No, they wouldn't, and they would roll out their own proprietary browser from scratch and the world would be a worse place. If Hadoop was not as liberally-licensed as it is now, do you think Yahoo would contribute to it? No.
I'm not offended - All I'm trying to say is that if you tighten up your software license, less people will use it, but they would have to contribute back. If you go with a BSD-style license, much more people will use and incorporate that project (for many reasons, including the fact that you can monetize your application much easier), and even if a small percentage of them contributes back, it's still good.
(I'm not a native English speaker, so I can't express what I want to say very well)
"If Webkit was (pure) GPL, do you think Apple would even consider using it in the first place?"
You've got your history wrong. Apple created Webkit, so they never needed to make that decision. You meant to write "If KHTML was GPL ... " (BTW, the qualification 'pure' is meaningless here; LGPLv2 is not an 'impure' version of GPLv2.)
Steve Jobs has been anti-GPL since the NeXT days, with the Objective C contribution to gcc, so of course that's was a deciding factor for Apple. However, they could have chosen Mozilla as the basis, or purchased the technology from some other company. There's no evidence that without KHTML they would have done a "proprietary browser from scratch."
I do wonder if the LGPL for KHTML is what made WebKit be available in the first place, but that is not relevant for this discussion.
"If you go with a BSD-style license, much more people will use and incorporate that project ... and even if a small percentage of them contributes back, it's still good."
As far as I am aware of, there is no evidence for this assertion. I've been involved with BSD and GPL projects, and the license does not seems to affect the amount of feedback or amount of uptake. In any case, the percentage of good code feedback is usually minuscule; excepting a few large-scale projects. You can see evidence of that elsewhere. Quoting Tim Bird, ex-BusyBox developer "[I'm the] guy who lamented that the busybox lawsuits had never produced a single line of usable code added to the busybox repository."
Your comments here reflect optimism, but that optimism has little base in how software is actually developed.
You're right. I was careless there, however I knew about WebKit's root, and I use a custom fork of WebKit for one of my own projects... And I never remember which version of GPL and LGPL imposes what restriction, so what I meant by pure GPL was the most restrictive kind of GPL.
> There's no evidence that without KHTML they would have done a "proprietary browser from scratch."
No, there isn't. But Apple is a company that doesn't do open source projects unless they have a very good reason for that. With the current hindsight, yes, It's clear that using an open source browser was the best choice for them. But at the time, no one knew that WebKit (and Chrome) would be such a success (with the huge adaption of Chrome on desktops and Safari on iOS's). That's just the way they did and continue to do their business. So while my assertion was just a guess, it's not a baseless one. We can never know.
> ...the license does not seems to affect the amount of feedback or amount of uptake.
No comment on that, because my experience is far less than you. I just feel that it must be easier to talk a non-technical manager into using a BSD/MIT/Apache-licensed codebase than a GPL one.
Again, I agree that my comment above was sloppy and I should've made my points clearer and spell them out as my thoughts, not facts.
"Apple is a company that doesn't do open source projects unless they have a very good reason for that"
In this case, it was to break the dependency on IE. Mozilla existed for the Mac, but the Mozilla codebase was clumsy. "KHTML and KJS allowed easier development than other available technologies by virtue of being small (fewer than 140,000 lines of code), cleanly designed and standards-compliant." (Quote from Wikipedia.)
It's then a business question of how to develop the project: proprietary/licensed (like IE and Opera), proprietary/internal (like ... AOL?), or public (like Mozilla). I think Opera was enough to give some estimate on the market size, and show there isn't all that much of a benefit to staying proprietary.
But hindsight is 20/20. I don't know why Apple went from releasing only WebCore and JavaScriptCore (the LGPL components of WebKit) to releasing all of WebKit (the rest under a BSD license, I think).
I think sek's post was more along the lines of "but what has he done for me lately?"
Right now, for every piece of open software that has enabled all kinds of world-changing good things, there's a dozen situations where open software is not a viable solution when compared to the closed alternatives for a wide variety of reasons, unless you're explicitly choosing to use only open software as a show of support for an ideological cause. What frustrates me about Stallman is that he spends his time lecturing people about why they're bad people for not using open software, instead of actively working to make open software a more appealing solution more of the time.
Have you ever listened to his talks? I have read a bunch of what he has written (mostly transcripts of talks) and did not get that impression. His main point is not that you are a "bad person" for using proprietary software--rather, it's more like you are the victim. Now, he does believe you should not use proprietary software, but because it's abusive and takes away your rights. Finally, I could see getting the impression that people publishing proprietary software are "bad", but that's a different story altogether.
Also, we're mostly developers here. Barring a few fields (things like .NET and iOS), free software is the best option for development. So while an artist using exclusively free software may be making a sacrifice, I have actually been much more productive on Linux/Emacs than I ever was on OS X or Windows. It's really a win-win situation.
As the FSF would point out, the free software movement is different from open source. If there was no free software movement, or a prohibition on GPL'ed software, then Google could have used other open source tools (eg, *BSD) instead.
One serious concern in the FSF seems to be that a large, programmer-centric company like Google could rewrite most free software, should the license not be compatible with the business model. Eg, the recent brouhaha on a non-GPL replacement for BusyBox and a comment about Google's goal of "reducing the amount of GPL software in user-space for Android devices."
> As the FSF would point out, the free software movement is different from open source.
They point this out and it's philosophically true, but are there actually any licenses that meet the definition of "open source" but not the definition of "free software" (or vise versa)?
All of the ones that people actually use (GPL, LGPL, BSD, MIT, ISC, and Apache, I think that basically covers it) appear to pass both DFSG and OSI definitions.
Going through the list of licenses which the FSF considers not-free but which are listed on opensource.org as "open source": NASA Open Source Agreement 1.3 (NASA 1.3), Reciprocal Public License (RPL 1.5). I'm hard pressed to think of something which can be considered free software but not open source.
My point though is that you commingled the free software movement with open source efforts. Google etc. could have implemented what they needed from various open source projects which existed at the time but were not part of the free software development.
The major exception, of course, being gcc. It's only now with LLVM that gcc has a serious open source alternative. (I assign that term carefully; LLVM is not part of the free software movement.)
Your distinctions in reality are pretty meaningless, you can be an open source guy using the GPL (look at Linus) or a free software guy using BSD. Both movements overlap enourmously, and the differences between them are very small compared to the rest of the software ecosystem. I wish we could stop all the silly infighting and see that we are all heading in the same direction.
The issue is that I did not like and do not agree with the statement "Google and Facebook would never exist the way they do today without the free software movement."
(There's the trivial sense of "way they do today" in the Microsoft, which uses some BSD technology in Windows, would also be here in the "way they do today" without that technology, but it would be generally the same.)
Do you agree with the above statement? If the free software movement had not existed, would Google and Facebook be seriously different than what they have become? How so?
Also, who is a member of the free software movement who also uses primarily a BSD license?