Saturday, June 11, 2011

LibreOffice and OpenOffice.org: Missing the Big Picture

For once I will forego a principle of mine and comment on a subject that I'm not immediately involved with: namely the conflict between the communities of OpenOffice.org and LibreOffice.

For readers that don't normally read Planet KDE, I think you will forgive me if I make some references to KDE organizations and applications. Readers that are not interested in OpenOffice or LibreOffice but only in topics related to KDE can stop reading here.

Background

As most of you know by now, Oracle has donated the code of OpenOffice.org (OOo) to the Apache Software Foundation (ASF). Previously it was owned by Sun and later Oracle and released under both a proprietary and an (L)GPL license. Now it will become licensed under the Apache Software License (ASL) only.

LibreOffice (LO) was forked from the LGPL'ed version of OpenOffice.org some 8 months ago, while also creating a new organization for this: the Document Foundation (TDF). During this time the LibreOffice community has worked on cleaning up the source code, integrating features from another fork, (Go-oo, which was used in most Linux distributions), merging features from subsequent versions of OpenOffice.org and also creating new features themselves. They have a healthy community going with a number of core developers (mostly employed) and a large number of volunteers. There is also work on creating a real foundation much like the KDE e.V in Germany, and they received substantial donations to this goal.

To put it mildly, the LO community is not happy about the move of Oracle. Here are some points that are being made:
  • the donation to ASF is only made to further the agenda of IBM, since IBM is basing their application Symphony on the code of OOo.
  • the move to donate to the ASF is done to weaken the LO community now that it is starting to see some success.
  • the code should have been donated to TDF instead since they have all of the community behind them.
I personally don't think many of these points are valid. They have been debunked by clarifications on the Apache mailing lists in ways that at least I think are valid:
  • The donation was made to ASF instead of TDF because of two main reasons: TDF is incorporated in Germany while ASF is American. Since Oracle is an American company and since the laws are what they are, Oracle would only be able to get the substantial tax deduction that they will if the donation is made to an american foundation, and the TDF uses a license that Oracle didn't want to use (more about this below).
  • I think that LO indeed has a very healthy community, and it is growing week by week. However, it is self-selected from those that prefer the (L)GPL before other, more permissive, licenses. This means that LO only has the part of the community that is visible, not the actual whole community.
  • I believe that Oracle doesn't really take TDF seriously. TDF and LO is really big in the Linux community, but most of the OOo users are actually on Windows. I seem to remember that less than 10% of OOo users are on Linux, but I would be grateful for corrections here. I also believe that Oracle doesn't take the Linux desktop community seriously, or at least that they think it is irrelevant to their goals. This means that I don't think that Oracle cares whether they interrupt the LO community or not.
Even though much of the fight has been about the communities, what it really boils down to is a license issue: The ASL is a so called permissive license which lets anybody do almost anything with the code, including incorporating it into a proprietary program or rerelease it altogether under a proprietary license. The GPL, on the other hand, demands that changes are either released with source code and under the same license as the rest of the application, or that they stay inhouse and are never released.

Interestingly enough, the permissive nature of the ASL lets developers of GPL code take code from a project under ASL and relicense and incorporate them into the GPL code. So the developers of LO can take all the changes that are made in OOo and put them in LO, but not the other way around.

Many community members of LibreOffice take this as proof that they are far ahead and that they will always stay far ahead. All the fixes in OOo can be merged with the LO code, but the other way around is not possible. Instead the LO fixes will have to be reimplemented from scratch unless a contributor could be persuaded to contribute to both the projects.

However, all of these considerations are missing the big picture.

The Big Picture

The big picture is that we are all together in a much bigger fight: the one between the Open Document Format (ODF) and the proprietary formats of Microsoft Office. It is petty to say that "we are ahead in this battle, and will always be" when at the same time the whole war is lost.

So here are the facts of the current situation:
  1. Oracle has already made the donation, so there is no chance that they will change their mind and instead donate to TDF. The vote within the ASF to allow the donation into a so called 'podling' is well under way and it looks as if it will be a big YES. There are also over 100 people saying that they will contribute to OOo under the ASF. So it looks like OOo will indeed have a future inside Apache.
  2. Many of the people listed as future contributors to OOo regard the ASL as the best license, precisely because it allows proprietary extensions or even relicensing of the project itself. Among these seem to be IBM who want to use the code as the base for Symphony. These people will not put their weight behind LO which is a GPL project.
  3. The people behind LibreOffice will also not change their minds. For them the GPL is an important way to protect the future freedom of the code. Some of the founders have gone so far as to say that they discourage the contributors of LO to also contribute to OOo under Apache terms. While I am personally very much in favour of the GPL, I think this is a clear case of missing the big picture.
So, here we are: the community is divided into two parts, each with their own agenda but both with a very common interest and common code base (even if in different stage of refinement).

And I maintain that most of the people are missing the big picture. We need to cooperate in some way to win the war. So let's analyse where we can actually cooperate while at the same time keep our priorities in mind.

Common Ground

The most important feature that all office applications have is compatibility. It makes little sense if I produce a document that the recipient cannot load or that loses data when saved back. It is much less important if there is a common feature set in our editors or even if it renders completely the same (this is not true for all applications, of course, but for most).

I would especially stress that data loss is unacceptable.

So the most important thing is that LO and OOo can load and save the same files using the same definition: the ODF specification. As long as this is true, it doesn't matter if one or the other has more fancy features. It is, of course, necessary that they also remain compatible with the Calligra suite and other office applications that use ODF as their native format.

It is therefore important, considering the big picture, that if one of the two suites fixes a bug that introduces an incompatibility, that this fix is also implemented in the other. And not just because LO and OOo should remain compatible, but also in relation to the other ODF suites.

So I will suggest the following...

Compromise

In the Calligra Suite, we have a good separation between the so called Office Engine and the user interface. This engine has the responsibility to load, store, and save the contents of the document. It also renders the document on a canvas that can then be shown in an application for viewing or editing. The separation between the load/store/save parts and the rendering parts are not very strong, but it can nevertheless be seen.

Calligra has had great success with this separation. I think the thinking behind it can be applied to the current situation.

I think it would be of great value if TDF and ASF can agree to let OOo maintain the lower level (the Engine if you like) and then build both applications on top of this engine.

Here is my reasoning:
  • The war that we are fighting is more important than the license issues. I understand that the people behind LO has little sympathy for the too permissive nature of the ASL and are firmly behind the GPL. However, this should be overshadowed by the importance of furthering the cause of ODF over the proprietary formats that the current monopoly is pushing.
  • It is very important that different implementations of ODF suites remain compatible with each other. This is greatly helped if they are in fact based on the same code base. It should be more acceptable to have a smaller part of the whole appear under a license that you are not very fond of than the whole application. I think the willingness to do this could be greatly influenced by the current LO leaders, i.e. the people that form the steering board of TDF.
  • It will save work if we can agree to at least have some common codebase instead of two totally different ones.
I am not familiar enough with the codebase of LO/OOo to give a suggestion of exactly which parts should be shared in this Engine and which shouldn't. But I am confident that if just the will exists to cooperate, then this should be an easy problem to solve.

15 Comments:

Blogger toddrme2178 said...

I am not sure I agree with any of the reasons you supplied for the decision:

Reason 1. LibreOffice is not under GPL or LGPL, it is dual-licensed under a combined LGPL and Mozilla license. The addition of the Mozilla license was done specifically at the request of companies that wanted a more permissive license, like IBM. Only new code has the Mozilla license, the original OpenOffice code could obviously not be relicensed, but Oracle could just as easily licensed it to the TDF under a dual LGPL/Mozilla license, or even an Apache license if they really wanted.

For point 2: Although the TDF is in Germany, it has partned with an organization in the U.S. specifically for the purpose of accepting tax-deductible donations for the TDF in the U.S. So this would not have been an issue.

For point 3: LibreOffice, far from neglecting windows, is working very hard to streamline, shrink, and overall improve the installation process on Windows. Most of the announcements I see that are platform-specific seem to be focused on Windows. This point seems to be based on the assumption that because LibreOffice is popular on Linux, it cannot also be popular on Windows. But without some numbers to back this up it is just speculation.

So not only do I not think any of those three reasons are valid, the LibreOffice community has been very careful to make sure at least the first two weren't an issue, and seems to have been dedicating substantial time on the third as well.

As for your suggestion, I agree with it, in fact I posted the same suggestion on the mailing list a few days ago. As far as I can tell it was ignored. However, I do understand why TDF developers are upset, and why they don't buy the reasons that have been put forward so.

For the record, I have no affiliation with TDF, never wrote a single line of code for it, and only use it grudgingly until Calligra is working properly.

11:16 AM  
Blogger Tucanae Services said...

"The big picture is that we are all together in a much bigger fight: the one between the Open Document Format (ODF) and the proprietary formats of Microsoft Office. It is petty to say that "we are ahead in this battle, and will always be" when at the same time the whole war is lost."

There is an even bigger picture that I think you miss. The average end user, and the typical corporate selection committee generally don't give on wit about file comparability. All they know is that sending a .DOC file can be read by everyone -- end of story.

What most people worry about are does it work? Is the cost reasonable? Does it have the features I need? Microsoft's problem is MS Office. The primary reason that most people buy any MS OS product is to run MSO. Uncouple that concern and most individuals would probably not care what OS they are running.

Both camps need to tackle the features war if they want to win.

12:40 PM  
Blogger user said...

Oracle could very well have donated the code to the Free Software Foundation (FSF). The FSF has more than 25 years of relevant experience and is based in the US.

If you read the Apache mailing lists, Oracle was even happy to transfer the copyrights to the ASF. The ASF refused.

The bigger picture is the license issue, permissive vs copyleft. Just like Microsoft likes permissive licenses (they can create closed-source software), so does IBM.

It will take months before the ASF takes a decision (and implement) on whether to use SVN (ASF uses traditionally SVN), Mercurial (OOo uses Mercurial, but do they get the full repositories?) or git (which the TDF uses).
There is talk at the ASF to release the next version of OOo (3.4) in six months.

1:38 PM  
Blogger Kirby Dunsmore said...

I'm with author Inge Wallin here. The primary force behind the various open licenses has been the imprisonment of users by proprietary schemes to enforce incompatibility. Wallin is addressing the development side of the user / developer relationship, asking developers to maintain a united front against user entrapment by cooperating to prevent further user confusion about the compatibility of output files. Users are painfully aware of capture; developers know exactly how users were bound by proprietary chains. They have the ability to free users without creating their own traps for them.

2:09 PM  
Blogger oiaohm said...

Calligra Suite has a independent engine to Open-office.

So really OpenOffice and LibreOffice splitting ways at engine level is not an issue. As long as both engines remain ODF compatible.

toddrme2178 the idea of re-licensing what has already been done on LibreOffice would be a major pain in tail.

Their is something most people do Miss.

Apache Public License is not only LGPLv3 compatible but also Mozilla Public License compatible.

By compatible. You can over license Apache public license stuff as Mozilla Public License.

So the release of Openoffice to apache will allow. LibreOffice to go fully dual license LGPL/Mozilla license from top to bottom. Where current Libreoffice older sections are LGPLv3 and newer sections are dual license.

Mozilla License allows closed source extensions. But any alteration to core code has to be given back.

So no matter what the release to Apache will make stuff better for Libreoffice. Being able to convert to a pure dual license makes using it a lot better.

1:04 AM  
Blogger toddrme2178 said...

oiaohm: I am not sure you are understanding what I said. The parts done in LibreOffice are already under a dual LGPL/Mozilla license.

The only parts that are not under such a license is the stuff owned by Oracle, the stuff that Oracle gave to Apache under a totally new license. It would have been no more difficult for Oracle to re-license that stuff under a dual LGPL/Mozilla license than it was for them to re-license it under an Apache license. It would have been no additional work for the TDF because they had already done the work, and it would have been no additional work for Oracle since they were changing the license anyway.

It is not like the decision to use the Mozilla license was an arbitrary one, it was the one the companies the talked to, such as IBM, asked for.

And there are plenty of valid reasons why members of TDF (and the FSF, I might add) think this move will hurt them and the overall open-source community.

1:41 AM  
Blogger oiaohm said...

toddrme2178 Issue I was point at if oracle did not release. Core of libreoffice would remain stuck as LGPLv3.

Oracle giving OpenOffice to apache under Apache license. Will allow libreoffice to move to consistent licensing.

LLVM vs GCC. LLVM is infact based off a GCC future design document.

Competition is good. Calligra Suite vs OpenOffice vs Libreoffice will be good.

Even if OpenOffice spawns a few more closed source office suites.

Apache license release of OpenOffice I don't see as bad. It means libreoffice cannot sit back and say we are the only major free Office suite and do nothing.

Has LLVM vs GCC hurt gcc no. Its seen GCC focus more on improving.

Has BSD vs Linux hurt Linux. Same thing.

One thing we can bet on is that the Apache license might be a lead weight around OpenOffice neck. Like the BSD license is a lead weight around BSD stuff.

The no requirement to give back can be problematic.

It will only hurt the open source community if the open source community does not produce a good product.

Yes I do expect to see some infighting. Where libreoffice takes openoffice stuff extends and does not give back.


Really the best thing let the openoffice deal go through and if the libreoffice guys keep the fastest development speed openoffice will fail to second rate soon enough.

Basically in time unity will return. Oracle not giving to TDF will not make any difference long term in my eyes.

Now what would be problemmatic is if the license for apache was incompatible with MPL or LGPLv3.

Yes Oracle could have done way worse to us. Be thankful for small mercy.

Let the chips land and sort out the mess latter on. Apache foundation is in a lot of ways a saner party to have a license negation with in time.

I would suspect their would be nothing in the deal preventing Apache foundation from transferring OpenOffice on to the document foundation in time.

If Apache does not get the developers they will be kinda forced to.

I see no reason to panic at this time.

6:53 AM  
Blogger orcmid said...

I agree with the idea of finding support for a common engine, one that is particularly good as a reference for support of ODF as well. That is the main point of my comment here.

Now a couple of fine points lest there be too much confusion about the details that apply to the present situation:

1. The licensing to Apache does not alter the LGPL license on the OpenOffice.org code that already exists under that license (and its derivatives in LibreOffice). Anyone can take advantage of that under the LGPL3 license that already applies. (It can't be rescinded.)

2. However, the code at Apache will only carry the Apache license and that applies to further development at Apache, whatever it is. Those are conditions of the grant and the way that Apache operates. If you get the code from Apache, that is the only license that will be attached to it.

3. We talk about relicensing but there is really no such thing. LGPL3 code cannot be relicensed any more than Apache ALv2 code can be relicensed. (Only the owner of the copyright can make an additional licensing, as we just saw Oracle do.)

5. Code does not loose its license when it is incorporated in a derivative that has a different license. The different license only applies to the incorporation and any modifications but can't change the license on the code that remains from the original unless the original license allows it (and neither LGPL nor Apache do). This is one reason there are all of those THIRDPARTYLICENSE files and equivalent in distributions that rely on material from other sources under licenses that permit e the use made in the downstream distribution.

10:07 AM  
Blogger oiaohm said...

orcmid. I did not say the word relicense.

I am referring to something worse. Meeting MPL and LGPL requirements you meet Apache Public license.

But the reverse is not true. Its a process called over-licensing. Apache License does not forbid this.

LGPL and MPL and other copyleft licenses do forbid over-licensing.

Welcome to the evil. Lets say I am a libreoffice developers I write a bug fix to libreoffice copy of OpenOffice under LGPL were it is my alteration ends up pure usable as LGPL alone.

As Apache public license as planned. This code now could be duel require license or even worse tri requires.

Exactly the same issue that BSD has with Linux. You hear them yell long and loud about it.

I don't see Apache running OpenOffice to be able to be a common core engine. Its going to be under the wrong type of license so stuffed.

Apache license basically means Libreoffice can take what every they like and never ever have to give the alterations back. Stiff briskets. All due to Libreoffice alterations due to the weakness of the apache license be dominate LGPL and MPL with apache license as a background not major-ally demanding requirement.

Result of this shipping anything from LibreOffice as anything other than LGPL and MPL will be impractical. So for all effective usage its Dual License MPL/LGPL some time after Apache releases Openoffice as Apache Public license.

Yes the divide will come.

Due to license the only one suitable to be a reference engine is in fact Libreoffice. Due to the fact it can pick up the alterations from both projects. I expect Apache to see sanity in time.

What is the key requirement for a reference engine. To contain all the features.

Basically I don't see apache with openoffice as anything to worry about. They are lining up to legally shot self in foot. Ending up in a location where OpenOffice has bugs that Libreoffice does not. So OpenOffice will become Libreoffices defective brother. Libreoffice will be able to pull any fix that is done to the OpenOffice code base.

Libreoffice will be the best quality out of both of them unless Apache sees sense and follows Libreoffice licensing lead. Or is somehow able to get Libreoffice to make Apache license one of their default licenses.

To live will OpenOffice most likely will be forced to re-license to match Libreoffice.

4:45 PM  
Blogger oiaohm said...

Yes I don't see any reason why Libreoffice has todo anything to assist OpenOffice. In fact for them the best thing they could do is be stand offish. They have nothing to lose by being so.

Apache OpenOffice is the one that loses by Libreoffice holding ground.

4:48 PM  
Blogger Nerd Progre said...

"I am referring to something worse. Meeting MPL and LGPL requirements you meet Apache Public license."

Your English is atrocious.

FC

9:50 PM  
Blogger KeithCu said...

Here is my list of reasons why the fork will waste many man-years.

http://keithcu.com/wordpress/?p=2567

3:20 AM  
Blogger ingwa said...

First of all, sorry for not having replied earlier. I have been travelling and having bad network where I was. That said...

@toddrme2178: LibreOffice itself is not under MPL, only the contributions that are done on top of it. It cannot be since it was starte from the (L)GPL'ed version of OpenOffice.org. In practice this means that it's LGPL only since the contributions on top of the original code are worthless without that code.

And besides, the background was only given to provide some context, it wasn't my main point. My point is what could (should?) happen from now on.

@Tucanae Services: I think you are wrong, I think that compatibility is a top priority. In fact, that's why ODF has had such a hard time competing: there are too many documents in the old formats.

@user: You may be right that could have done this. But the blog is about the current situation, not what could have been done.

@oiaohm: Splitting *is* an issue if it leads to incompatibilities. And in the long term it will, I'm sure of that.

Regarding your last comment, that contained this paragraph: "Yes I don't see any reason why Libreoffice has todo anything to assist OpenOffice. In fact for them the best thing they could do is be stand offish. They have nothing to lose by being so."

This is *exactly* what I'm talking about: By being petty and only see the other party as the competitor, you miss the big picture: That we (OOo, LibO, Calligra, etc) are all in this together against a much bigger enemy: the monopoly of MS Office and the OOXML formats. Please, can we try to skip the infighting among the ODF based applications and help each other towards the bigger goal?

12:17 PM  
Blogger pixi said...

I found your site on google, your site is great with daily update, thank you for that
Also here is my blog: http://fullsoftwarebox.blogspot.com/

9:35 PM  
Blogger Abdulrehman Kehar said...

Mobile Movies

Dubbed Mobile Movies


Hindi Dubbed Movies

Full Software Free Download

11:16 AM  

Post a Comment

<< Home