OpenFarm’s sofware is being written very rapidly by a dedicated team of software developers from around the world. The process of collaboration is quite interesting for those who are unfamiliar with modern software development. Here is the gist of how it works:
Our software is stored in a ‘repository’ with a service called GitHub; a repository is just a technical name for a folder – a place where you store files. Using GitHub is free for us because our software is open-source; you can see OpenFarm’s repository here. The repository holds the ‘master’ version of the software, as well as all of its history. When someone wants to change the software, add a feature, or fix a bug, they ‘fork’ the software into their personal GitHub account, which means they make a copy of it. The software developer then makes their changes on their own version and then ‘commits’ those changes – in other words, the save the changes. Then they send in a ‘Pull Request’ to the master version. Someone looks over the changes, and if they are good, the changes are ‘pulled’ into the master version. In other words, the modified version is merged with the master, which allows others to then build off of the more updated master version, and so the process repeats.
The process is an extremely efficient and innovative way to work collaboratively, and we just passed a major milestone: 1,000 commits. That means the OpenFarm software has been modified and added to 1,000 times since we started the project. Wow, go team! Here’s to the next 1,000 commits!