[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/session.php on line 583: sizeof(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/phpbb/session.php on line 639: sizeof(): Parameter must be an array or an object that implements Countable
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4516: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3262)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4516: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3262)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4516: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3262)
Gephi forums •[IMPORTANT] Gephi license: leaving GNU AGPL to BSD?
Page 1 of 4

[IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 14 Nov 2010 19:16
by admin
Hello Gephi Community members,

I want to address again the issue of our software license, why I think we should abandon the GNU (A)GPL and discuss about possible solutions. This is very very important and will have many implications in the future, so please take the time to read and debate! Licensing is crystallizing questions around a vision on the software, and here I expose mine.

Reminder: what is Open Source/Free Software?
According to the FSF definition:
Free software is a matter of the users' freedom to run, copy, distribute, study, change and improve the software. More precisely, it refers to four kinds of freedom, for the users of the software:

1. The freedom to run the program, for any purpose (freedom 0).
2. The freedom to study how the program works, and adapt it to your needs (freedom 1). Access to the source code is a precondition for this.
3. The freedom to redistribute copies so you can help your neighbour (freedom 2).
4. The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.

A program is free software if users have all of these freedoms.
The fundamental difference between a Free Software and an Open Source Software is the obligation to publish the source code if the modifications are released in binaries. Consequences for Free Software: when the code is Free, it remains Free, thus all improvements come back to the community. Open Source code can on the contrary be modified and integrated in proprietary softwares.

More info on this excellent introduction.

At Gephi we made the choice of Free Software two years ago, and released Gephi 0.6 in GNU GPLv3. A subtle update were made when we released the Gephi 0.7 Toolkit to strengthen the protection when the code is used on servers, so we moved to GNU AGPLv3. The objective at this time was clearly to protect the work and force third parties to contact us for business questions...which almost never arrived. But that was a good choice to let us focus on the first vision: build a generic software for students and researchers who have to explore networks and create cartographies.

But...

The right question
I am not an ideologist, so apart from the Free Software philosophy, I focus on pragmatism to take part on the leadership of the project. I notice two facts:
  • Efficient development is only possible when someone has a full-time work on the project. It implies a correct salary, so the ability for the community at large to hire. That was the case for Mathieu and I ; that's why we were so fast.
  • The GNU xGPL doesn't offer in practice the possibility to create industrial value, not because of the restrictions themselves but because it's too expensive for companies to get it evaluated by lawyers. There is barely no "employability" outside research for our developers to work on Gephi itself.
The right question to ask is: "Where to put value?" Inside the software, or inside people who contribute to it?

At Gephi we have chosen the second option from the beginning. I claim that the software is not a goal by itself, but a way to do great things in research, industry, society...or in life. I claim that it should help contributors and users to:
  • improve their skills,
  • generate carrier opportunities,
  • and make money to get a life.
I see the produced technology as a proxy for everyone to reach personal goals, whatever they are if they don't hurt the project. These individuals can only succeed if a common good exists: the Gephi Platform.

So what's the problem with Free Software, which aims to protect such common goods?


The GPL trap
The answer is simple: over-protectionism at a global scale.

We saw in the first section that the GNU xGPL limits the possibilities to make use of the source code by the contributors themselves. For instance, one can create and sell a Gephi plug-in but it must be in GPL or LGPL, and publish the source code. For very specific applications it is just stupid, compared to the time spent in development and the proportion of people/companies who'd just compile the source code for free. This system doesn't encourage innovation for niche markets, which is...everything else to do when you already have a generic platform.
Another case is to build a whole specific application on top on Gephi Platform. Currently you should release everything in GNU xGPL and publish your code. This system makes serious restrictions on your freedom to create value the way you want. Everybody can find a case when staying in GPL doesn't hurt, okay. But in most cases, such specific projects would just be trashed because of no solution on the market to make it live, or it'd be too much risky.

The principle to keep all contributions inside the Free Software ecosystem seems good in general. However it is locally inapplicable as soon as a software becomes an extensible platform like Gephi 0.7, because we introduced there the distinction between "generic" and "specific" contributions. Is called "generic" a contribution that can be useful for everybody, thus should make the common good grow up. Is called "specific" a contribution related to a job or a service not targeted by the platform. No obligation should exist to keep it inside the community's common good.

To sum up, I think that the Free Software paradigm is paradoxically not made for communities but for individual hackers. It is "freedom for softwares". I want "freedom for developers".


Towards a manifesto on open platforms
I have introduced in the previous section how to see the platform's basecode as a "local common good", focused on the community's interest, on the contrary to a global common good. Now this is a first attempt to write a manifesto for the development of open platforms:
  • Respect the freedom of individuals, so do not force people to be Free/Libre if they don't want to follow the ideology of the FSF.
  • Focus on the common good defined with the community.
  • Let the initiative for the community to create specific plug-ins and applications.
  • Facilitate economic value creation without discrimination on its nature or usage.
  • Keep legal stuff simple. You want to pay developers, not lawyers.
Solution: Open Source licenses
This manifesto is very close to the Open Source definition proposed by the Open Source Initiative ("OSI"):
1. No royalty or other fee imposed upon redistribution.
2. Availability of the source code.
3. Right to create modifications and derivative works.
4. May require modified versions to be distributed as the original version plus patches.
5. No discrimination against persons or groups.
6. No discrimination against fields of endeavour.
7. All rights granted must flow through to/with redistributed versions.
8. The license applies to the program as a whole and each of its components.
9. The license must not restrict other software, thus permitting the distribution of open source and closed source software together.
That's why I propose to choose an Open Source license like the New BSD.
It will ensure a complete exploitation of the platform with a low barrier to entry for business relationships. Note that the community can fork the Gephi project at any time and then choose its license if they don't agree on that.


Our structural model for the Gephi community
The Gephi project has historically been led by a core of three people: Mathieu Bastian, Mathieu Jacomy and me. We created a not-for-profit organization in 2008 to support its development and see this legal entity protect the intellectual property rights. As largely explained in the announcement, the Gephi Consortium is an evolution of the NGO to accept worldwide memberships and lead the project more closely to the community's needs. This is a political place, in a sens that members elect the management office, vote for the budget and future plans for the platform.

The Consortium will enable partnerships opportunities and job offerings for the developers and users of Gephi, and will ensure the sustainability of the project.

Please consider to join!


Conclusion
I met Richard Stallman, founder of the FSF and creator of the GNU GPL, two days ago in Paris when he gave a speech on "Copyright vs communities". I tried to engage a debate on this problem with GNU GPL, in particular on the freedom to combine Free and closed source as long as the positive externalities help a Free Software project to grow up.

He barely let me ask my question, and just refused to reply:
I don't want to have this discussion with you. And I will stop to talk with you because I don't want to help you on this goal.
He also said that he prefers to see a project dead instead of not being a Free Software. I let you conclude how pragmatic and respectful his position is.

But at Gephi we are open to the dialog, so here is when you take your keyboard and say what you think :)
I'm aware that I exposed my point of view too much so this debate will be biased...but changes always start with a shout!


Sebastien Heymann

Re: [IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 14 Nov 2010 21:32
by heldersuzuki
Hi Sebastien,

I agree that this is a very important topic and I agree with you about developer freedom. A piece of code without people around is just useless.

I personally don't care whether it's GPL, BSD or Apache, and I understand the license can affect (positively or negatively) the ability of companies to support Gephi. I suppose this thread is possibly motivated by some company that wants to support Gephi, but feels GPL is too restrictive.

I personally support whatever you, Mathieu and Jeremy decide is best for Gephi.

Helder

Re: [IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 14 Nov 2010 23:33
by apatriarca
I personally agree with you. GPL licenses surely limit the freedom of developers to reuse their code to create economical values. Yesterday I actually had an idea for a computer game played on graphs and I thought I can let players load their graphs to play on them. It's just an idea and I will probably never develop it, but with a BSD license I would probably reuse Gephi code, while I probably wouldn't do it with the current license. So, I'm positive about leaving GNU AGPL to new BSD (or similar).

Re: [IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 15 Nov 2010 00:10
by jbilcke
I believe we indeed need more pragmatism on how Gephi interacts with its community.

To be honest, I'm not really convinced there are so many end users who want to compile code themselves instead of buying.

See the success of App Store: it works, people buy. Stuff. They don't care about "how it is made". Open or closed - that's the internals.

Sure, software is a selection competition. One could fork your code, keep the GPL, put a pony logo, and new cool features. Damn!

But then the community, people would be happy because hey - it would be better one.
People could improve their skills, generate carrier opportunities, or make faster money to get a life.

Still, YOU, the creator, could stop this catastrophic scenario. Since they had to keep the GPL (call our friends at the FSF if they don't ;)), you would be able to get benefit from the contributions, handle new development costs yourself, and get users back the same way they left.

That said, I would be interested in feedbacks from those individuals who didn't choose Gephi Platform (who they are, was their decision made in favor of another tool?, what is their appreciation of the Gephi license..) to have more clues on the problem

I think what Stallman tried to explain is that it's useless to take position if you let others take you over - clients are kings in a democracry, not dictators. Would you sell Gephi, if they asked you to?

Re: [IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 15 Nov 2010 07:44
by mbastian
Thanks Sebastien to explain so well the point. It's an important issue and I think we all share a common opinion so far.

The situation of Gephi is not trivial:
- It's a generic tool, can be applied in dozens of domains
- Both useful to academic and industry sectors
- Gephi and Gephi Toolkit do have different aims, though it's exactly the same code

The Gephi Consortium is here to clarify this and define what are the right directions. The idea is more about having a good ecosystem than protecting the software. As emphasized by Sebastien, protecting the developers is what we should focus on, as well as the quality of the software. There are many developers among many organizations who all have a different reasons why to use or reuse Gephi. As a founder, I think that everything which facilitates that is at the end positive for the development. That's why I'm in favor of dropping GPL and adopt BSD license, as I believe it fits better with the Gephi Consortium philosophy.

The situation of Gephi is special and I don't say that every project should use BSD license but after discussing with users and analysing the position of the tool, I think I can only be beneficial. Firstly because its true that GPL license is slowing down or blocking adoption among companies, that's a fact. And secondly because I think the value you get by keeping the code open and joining the Consortium is enough to convince, we don't need the license to force people to cooperate.

For the rest, I basically agree with Sebastien.

Re: [IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 15 Nov 2010 10:14
by elishowk
Hi all !

This topic is very important and I'm sure the community's decision will be the best for Gephi's future.

Politically, I'll be disappointed if Gephi loses "freedom 3" of Free Software,
The freedom to improve the program, and release your improvements to the public, so that the whole community benefits (freedom 3). Access to the source code is a precondition for this.
simply because it means that the companies you're so upset about would integrate Gephi as part of their non-free products without having to announce it. As a consequence reducing the visibility of Gephi.

Secondly, since this debate started, I guessed what are the "real world" examples of your main argument in the history of Gephi : when did commercial companies abandonned Gephi because of its xGPL license ?

Third point, not all OS-licenses are compatible with the GPL (http://www.gnu.org/licenses/license-lis ... leLicenses). From the perspective of a developer working in GPLv3 very close to Gephi, A move to an incompatible license will move me and the software I build away from Gephi.

To resume my opinion, I don't think Gephi (as a Free Software) and its community would win anything with this move.

Thanks anyway for opening the debate !
Elias

Re: [IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 15 Nov 2010 14:28
by jacomyma
The great idea behind GPL is its "contaminating" property. It clearly fulfills a political goal. The obligation to "free" your code if you benefit from "free" resources is not a sad side effect, it is how the license guarantees its "freedom". May it block you in your projects ? Of course, that's why it's here. This mechanism is there to force people to try hard, because they do not naturally do it. That's why I respect Stallman's point of view.

Every rule works like that. Think of the rules that apply to you when you drive. Everybody agrees with the Highway Code because it protects you from bad drivers. But when it's your turn to respect a rule, you find that it limits your freedom - that's what it is made for...

So this is my point: has Gephi become a "bad driver"? I agree with Elias on his remark: we need to clearly see why we feel "constrained" by the license. Aren't we trying to do something wrong?

I'm sure that none of us wants to "cross the line". We don't want to become some startup selling its proprietary software etc. So: where is the line ? We should carefully discuss why changing the license isn't crossing the line (and where do we put the limit). Personally I'm not convinced to change yet, even if I'm not opposed to.

Sebastien, can you explain concretely why the xGPL is limiting Gephi's development ?

Re: [IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 15 Nov 2010 15:24
by BigMadWolf
Thank you SĂ©bastien for starting this important debate.

As a FLOSS lover, I'd like to see the Gephi Platform (I mean the core features) to stay open source forever, and not forked by another company that would sell a closed source package without redistributing the improvements.

However, as it has been pointed out, Gephi has become a platform. And most of platforms/frameworks I know are published under permissive licences: coincidence? I don't think so. Have those pieces of software been "stolen" by any company? No. That's why I personally agree to publish Gephi under a more permissive licence.

Nevertheless, I suggest to examine the choice of other alternative licences. What about the Mozilla Public License?

From Wikipedia:
The license is regarded as a weak copyleft. Specifically, source code copied or changed under the MPL must stay under the MPL.

Unlike strong copyleft licenses, the code under the MPL may be combined with proprietary files in one program ("Larger Work"). For example, Netscape 6 and later releases were proprietary versions of the Mozilla Application Suite, by adding the proprietary AIM and other parts. The MPL treats the source code file as the boundary between MPL code and proprietary parts, meaning that a certain source file (e.g., C++, JavaScript or XUL file) is either fully MPL or fully proprietary. The GPL, in contrast, uses the process boundary of the executable as the license boundary (for details, see GPL).
Thus, such a licence would let us keep the core features as open source, while closed source plugins could be developed. I haven't read the MPL, so maybe I'm missing some points. My 2 cents…

Re: [IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 15 Nov 2010 16:25
by jdb
Technically, have you considered implementing another plugin API which forks an external process and communicate with Gephi via IPCs? This, IMHO, makes it possible to implement proprietary plugins called by a GPL Gephi.

Like Jacomyma, I am interested in concrete examples of how the GPL impedes the development of Gephi. Like BigMadWolf, I see the risk of proprietary fork ala Apple Darwin which lurks behind the BSD license.

> To sum up, I think that the Free Software paradigm is paradoxically not made for communities but for
> individual hackers. It is "freedom for softwares". I want "freedom for developers".

With regard to a business, I think at this point we mean: "money for developers and for a sane evolution of the project". Maybe the solution comes more in the way of a credible business plan, and the search for investment. If the goal is a software for researchers and student, then isn't it clear that the audience has not much money, and the project might not evolve super fast?

If the audience is businesses, then I think that an extra step must be made to solve business problem for companies. I am not sure, maybe the press companies would have happily paid for nice and clean visual representations of the data leaked on the Afghan war, or companies such as Exalead or Google which build and sells intranet search engines would likely pay for a representation of the document sets available internally at the clients premises. I am not sure companies often pay for an open source platform as advertised on Gephi's website, they pay for an integrated solution to their business needs with contract, professional services and they like support.

The GPL have nurtured a significative business environment with the Linux kernel, this is a fact too. Google, Facebook, Canonical, or Orange and Free.fr (just in France) would certainly be less successful without the GPL. GPL company Qumran.net have made millions of dollars when bought by another GPL company Red Hat.

Stallman has always refused (bluntly) to discuss business models based on the GPL. I can personaly understand that he dodges such a complex problems on which he is not an expert. He is an expert in software and in the engineering/development methods and up to the point of legally protecting the collaboration from the companies short term best interest. He is indeed not the best person to ask advise for a sucessfull business plan.

Regards, good luck,

Jean Daniel Browne

Re: [IMPORTANT] Gephi license: leaving GNU AGPL to BSD?

Posted: 15 Nov 2010 19:20
by alexc
Hi all,

If you don't have a permissive license then a lot of businesses will be put off - as I understand right now there is a possibility to become a Gephi consortium member and re-license it to oneself (maybe I am incorrect), however, if true, then this method might be questionable and in any case would involve high legal costs to investigate if it is risk free: a lot of businesses simply would prefer to license graphing library from some of the commercial only vendors (like yworks.com)

"Contaminating" nature of GPL (unless it's a lesser license which is ok) is source of its strength however for small projects that can't gain massive corporate sponsorship (like Linux) it is a big disadvantage, especially if the tool is fairly niche.

In my view Gephi would benefit greatly by offering clear dual licensing options:

1) free - GPL or any other license that ensures changes are contributed back
2) commercial - something like BSD

This is something that can benefit Gephi a lot in my view.

Best regards,

Alex