Blogs
Community, customer service and Free Software
This is an edited version of a post of mine on the discuss mailing list of LibreOffice. The thread is ongoing at the moment I’m editing this post. Feedback and questions welcome.
Listening to user feedback hardly makes up a democracy. It’s user feedback. In some cases it might be a case of “nice customer service”. But it does not help that much. I’ll explain myself.
Let me describe to you what I called limited democracy here and how “power” and influence are distributed in FOSS projects.
A FOSS project mainly produces code. Its sole reason, in fact, is to produce code; whether someone pays for it or manages to be a guru at product strategy and marketing so well he can even entrance hackers in its “Reality Distortion Field” is another question. FOSS projects produce code. Then, around that rough code you have another categories of contributors: the QA testers, the localizers, the documentation writers, the marketers (no particular order here); sometimes you have the extension developers as well. All these people do something very specific: they contribute to the project. Granted it might not only be code, but that’s beside the point. They contribute and they make the project. The reason they contribute might be completely unknown to you, or there might be as many reasons as there are contributors. It’s good sometimes to question or to know what’s the “general reason” to contribute from one or two active contributors, but it’s not always necessary. Back to our contributors; they form the active people who push the project forward, heck, they are the project themselves. But because each of them might contribute for various and sometimes opposite reasons, any of them, sometimes even all of them or a good majority of them, will stop contributing; conversely, they might even increase their contribution. If you stick to the original line from Eric Raymond (the Cathedral and the Bazaar, a must read), the reason any developer would contribute is because he/she’d like to “scratch an itch”. Granted that scratch might be for hire or is already funded, but that’s besides the point.
In the end, it’s the people who make the software (and distribute it, promote it) who call the shots. They call the shots because they get to “make” the software at various levels. So it’s a meritocracy because it’s a “do-ocracy” in a sense. The good news here is that it makes up for quite a lot of people. The not so good news in a sense, is that “mere” users, by which I mean “passive” users, who do not contribute anything in terms of code, tests, localization, documentation, dictionaries, pamphlets, designs, etc. are only left with one choice: to use the software if they like it, or to stop using it. The only reason is not that it’s not a democracy, it’s just that they don’t have the power to act on the software project unless they adopt or reject it.
There is also a more subtle good part in this: no user is barred to join the contributors’ ranks; and when this user actually does, he’ll have a say as long as he remains a contributor.
There are projects who do not formally formalize too much who specifically are their contributors. Some others do. The Document Foundation does formalize it to the extent that it is our contributors who “own the foundation” and nobody else does. It’s not just in our social contract or an unwritten assumption, it’s legal . There are rather broad criteria to define what a contributor is and does (our bylaws and statutes define them) and anyone who qualifies become thus a member of the foundation with rather large ” political” rights. In this sense we have democracy. But FOSS projects do not run on open and democratic structure; they run on transparent and agreed processes, with a free and open source code at their core.
Podcast now available: Enterprise Mobile Management and Security
The Lafayette Deception, Chap. 10: Vive la Revolución!
Welcome to the sequel to The Alexandria Project, a cybersecurity thriller. If you'd like to read the book this series is based on, you can read the first three chapters for free here (just click on the cover of the book).
Adventures in Self-Publishing, Chap. 9: How to Price your Book and Does it Matter?
This series highlights aspects of my experience self-publishing The Alexandria Project. If you'd like to read the book this series is based on, you can read the first three chapters for free here (just click on the...
Ending the Symphony Fork
What is a fork?
A fork is a form of software reuse. I like your software module. It meets some or many of my needs, but I need some additional features.
When I want to reuse existing functionality from another software product, I generally have four choices:
- If your module is nicely designed and extensible, then I might be able to simply use your code as-is and write new code to extend it.
- I can convince you to modify your module so it meets my needs.
- I can work with you in your open source project to make the module (“our” module in this case) meet our mutual needs.
- I can copy the source code of your module and change the code in my copy, and integrate that modified module into my product.
Note that options #1 and #2 are the only options available with most proprietary modules, since these techniques don’t require access to the module’s source code. Options #3 and #4 are the additional options made possible by open source. Option #4 is what we mean by “forking” . Forking is enabled by open source software and is fundamental to open source ecosystems. It is neither good nor bad. It is a tool, part social, part technological, for overcoming an inability or unwillingness to collaborate. The problem is not with forking. The problem is the conditions that lead to forking.
Why do forks come about and how do they end?
Forks can come about for many reasons, including leadership conflicts, ideological differences and other political issues, as well as differences in vision and technical direction of the project.
Generally, a fork ends when the conditions that necessitated the formation of the fork have been resolved. At least that is true for rational participants who are merely trying to optimize outcomes. But intransigent ideological forks can continue indefinitely, and often do.
The technical side of ending a fork is typically a code merge, as different branches of the project are brought back together again. This can be laborious, but it is a one-time task.
Ending the Symphony Fork
With the move of OpenOffice to Apache, this open source project has made the critical move from a corporate-led open source project under asymmetrical licensing terms, to a community-led open source project under a single permissive license. This is a tremendous change and one that should lead all forks of OpenOffice, and all those who wanted to get involved with OpenOffice before but never did, to reexamine their orientation to the project.
John Maynard Keynes, when criticized for reversing his position in a dispute, famously quipped, “When the facts change, I change my opinion. What do you do, sir?” The “facts” of OpenOffice have changed, with the move to Apache, and this change of venue has made a huge impact on the Symphony team, which recently announced that it was ending its fork and committing to contribute their code to Apache and to work with that community going forward.
This does not mean that Symphony enhancements are going away. Far from it. We’re very proud of the UI work and other innovations in performance, accessibility and interoperability we’ve brought to Symphony and we will be offering the source code of these enhancements to Apache, and if accepted, will work within that project to merge these changes into Apache OpenOffice. The DNA of Symphony is not going away. What is going away is Symphony as a fork, as a divided effort. The Symphony DNA, the cool work the Symphony team has worked so hard on, will live on, in Apache OpenOffice, combined with other ongoing contributions from the community, in a larger, stronger development effort.
Now that the Symphony fork is ending, the obvious question is: Who will be next? If we can end a four-year old fork and merge in our work with Apache, then so much easier it should be for forks that have been around for far less time. “When the facts change, I change my opinion. What do you do, sir?”
If you are interested in learning more about the Apache OpenOffice project, I recommend browsing the project’s website and blog. If you want to get involved, you can sign up for the ooo-dev mailing list and post a note to introduce yourself. As we push closer to our 3.4 release candidate we’re in particular need of volunteers to help us test this release, on Windows, Mac or Linux. If you are interested in helping with that, be sure to say so in your note.
Related posts:
- The Legacy of OpenOffice.org
- OpenOffice, LibreOffice and the Scarcity Fallacy
- First release of the Apache ODF Toolkit
Upcoming podcast about Enterprise Mobile Management and Security
Daily links for 02/01/2012
The Family Office revisited
As expected, my first attempt at a Family Tree for Star/Open/LibreOffice has resulted in some useful feedback (thank you), so here is a new version of the chart (and I suspect it may not be the last revision…).
The Family Office
When a 16 year old German started work on a word processor in 1984, I bet he had little idea of the software dynasty he was founding. At one stage there were at least six distinct descendants, all claiming to offer something special to computer users looking for an alternative to Microsoft’s Office software.
For those interested in such matters, I’m proposing this little genealogical chart of the family. Any comments, corrections, etc will be gratefully acknowledged!
IBM: Going Mobile with two big announcements
The Lafayette Deception, Chap. 9: Time In and Time Out!
Welcome to the sequel to The Alexandria Project, a cybersecurity thriller. If you'd like to read the book this series is based on, you can read the first three chapters for free here (just click on the cover of the book).
Adventures in Self-Publishing, Chap. 8: Designing the Interior of your Book
This series highlights aspects of my experience self-publishing The Alexandria Project. If you'd like to read the book this series is based on, you can read the first three chapters for free here (just click ...
Daily links for 01/26/2012
First release of the Apache ODF Toolkit
The Apache ODF Toolkit 0.5 (incubating) release is now available for download. Detailed change notes are also posted. The ODF Toolkit is a Java library for reading, writing and creating ODF documents. It is entirely in Java and does not require that you install a desktop editor like OpenOffice. It operates directly on the file format and is suitable for server-side use, for tasks such as document automation, report generation, information extractions, etc.
As mentioned in a previous post, the Java components from the ODF Toolkit Union have moved over to Apache. Since this open source project was already using the Apache 2.0 license, the work required to achieve our first Apache release was relatively straightforward. The major task was to take the various components of the Toolkit, which were treated as independent projects at the ODF Toolkit Union, and get them to work better together as a single Toolkit, e.g., build together using the same version of the JDK, package them together into a consolidated release bundle. Not rocket science, but it did require some iteration.
We’re starting now to put together a plan for the next release and future releases. Some of the items under consideration include:
- Adding document encryption/decryption support
- Adding digital signature support
- Update to final published ODF 1.2 schema
- Update the demo applications
- Concurrency testing
- Adding support for ODF 1.2′s RDFa/RDF XML semantic metadata feature
- Implement ODF 1.2′s OpenFormula spreadsheet formula language
- Add high-performance event-driven streaming API, for subset of tasks that can be done efficiently that way
- More cookbook examples
- More testing and bug fixing
If you are interested in learning more about the ODF Toolkit, you should visit our website. If you have further questions, we have a users list and a development list that you are welcome to join.
If you know some Java and are interested in ODF, I’d encourage you to take a look at this project and consider participating. We are a small, international, welcoming group working on this project, with a strong focus on quality. Come, take a look.
Related posts:
Daily links for 01/25/2012
Daily links for 01/24/2012
Daily links for 01/23/2012
The Lafayette Deception, Chap. 8: The Doctor will Diagnose you Now
Welcome to the sequel to The Alexandria Project, a cybersecurity thriller. If you'd like to read the book this series is based on, you can read the first three chapters for free here (just click on the cover of the book).
Daily links for 01/20/2012
Adventures in Self-Publishing, Chapter 7: Designing the Cover of your Book
This series highlights aspects of my experience self-publishing The Alexandria Project. If you'd like to read the book this series is based on, you can read the first three chapters for free here (just click...


