Credit: Omran Jamal/Pexels.com
Picture this: Your company is ticking along nicely, making use of a reliable and well-engineered piece of software to support some important business process, when suddenly it becomes apparent that all is not well in the project's developer community. A fork is in the cards, and the very future of the project hangs in the balance.
Before we get to the crucial questions of whether a fork is really such a bad thing and what a CIO should do when faced with one, let's first be clear about what we're talking about.
In their study of software forks, researchers Gregorio Robles and Jesus M. Gonzalez-Barahona of the Universidad Rey Juan Carlos in Spain define a fork like this:
Forking occurs when a part of a development community (or a third-party not related to the project) starts a completely independent line of development based on the source code basis of the project. To be considered as a fork, a project should have:
A new project name.
A branch of the software.
A parallel infrastructure (website, versioning system, mailing lists, etc.).
And a new developer community (disjoint with the original).
And to put things in perspective, it's worth remembering that forking is not that common. Although forks have become more frequent in the last few years, the number of forks has not grown in proportion to the number of free software projects, the researchers found.
Looking at forks from both sides now
Forks may not be all that common, but that doesn’t make the thought of one any less unnerving if the project in question is one your company relies on. So how should CIOs think about forks?
"At one extreme, forking is one of the fundamental rights you have with open source code and we talk about how great it is to have the freedom to fork — it can be a good way to revive a dying project," says Allison Randal, president of the Open Source Initiative.
As an example, Randal points out that before the LibreOffice fork, OpenOffice.org was suffering from "human problems" that prevented the code from moving forward. The LibreOffice fork was successful and now has overshadowed OpenOffice.org.
Unfortunately, forking doesn't always produce such a positive outcome. "I have seen cases when forking a project divides the community, introduces tensions, cuts resources and ultimately kills both projects," Randal says. "If a project splits and you have only half the people working on each side, you get a situation where each is vying for the same users, and they don't get a critical mass. Then you are in trouble."
Sign up for CIO Asia eNewsletters.