If you’ve been following the Kodi community, you’ve probably heard the word “fork” thrown around at least once or twice. In simple terms, forking refers to the borrowing of code from one open source project to be used to create an entirely new project. When it comes to Kodi addons, forking generally refers to a new developer using the code from a previously abandoned Kodi addon as a base to develop a new one.
Forking is not only normal, but highly encouraged. In recent years, open source has made a huge leap over the commercial software industry. Open source code continues to live on and be upgraded after its developer calls it a day. The ability to modify and update open source software (even after its original developer abandons it) makes open source software ideal from an end user perspective.
Another key benefit of open source is the auditability of code. Anyone can audit open source code in order to verify that it is free of security holes, privacy threats, and general defects. When it comes to closed source (commercial) software, we have no choice but to trust its developer when it comes to code integrity, there’s no way of verifying it ourselves.
Forking allows code to live on, to turn into things that its original developer may have never expected. One very famous fork in open source was the creation of Bitcoin Cash. Bitcoin Cash’s developers forked Bitcoin, to create an entirely new cryptocurrency using its code base. It was not endorsed by Bitcoin’s developers, and it didn’t have to be, because it was open source.
Generally speaking, when you fork an application without approval of its original developer, it is good form to give it a new name. In many cases, it is likely required by whichever software license governs the code. Many open source licenses actually allow the code to be resold in its new form, assuming its new code is also made public so that future developers can benefit from the new code as well.
Forking is also a way of preserving technology that might have been lost otherwise. Sometimes a developer might be inclined to delete his or her (or their) code from GitHub. If that code has been forked, the code will continue to be available. If it hasn’t been forked, its deletion could very well mean that the code will never again see the light of day. If you like a project on GitHub, fork it for preservational purposes.
In case you haven’t already realized why it’s called “forking,” think about what a fork (used to eat) looks like. It starts with a single stem, and then branches out into separated parts that never meet again. There are hundreds of forks of popular Kodi addons going around, and we recently tested the code integrity of a few with positive results. When it comes to forking, we say fork on!