A quick overview from the project founder of how the FreeSWITCH organization is coping with the changing tides of 2018 and the consolidation of the telecom industry.
I started FreeSWITCH myself well over a decade ago in a time when SIP was just gaining traction. Quickly thereafter, Mike Jerris and Brian West jumped on board and blindly and unconditionally started helping me on an impossible task; Write a telecom software platform from scratch in an era dominated by Asterisk, Cisco and Sonus. We were alone for the better part of a year and then people started coming around. They tested it, they gave feedback, some would even try to find a way to offer a patch here and there. In just 2 years we had a soft-switch that could saturate a 100mb pipe on a single server. All the while [with a tiny core team] we scaled, built a commercial PBX, built a backend service that others could use for their telcos and tried to personally address every user we could and understand what they needed to be happy. The more we scaled the software, the more our users and business use-cases scaled with us. For the majority of that time our team stayed very small.
How did we manage that?
1) We are all crazy; Its been 13 years of 12-16 hour days to build out the FS core and its main modules.
2) We had some financially supportive employers along the way who subsidized our costs by paying us a salary. This meant FreeSWITCH did not carry any burden to pay its own core developers.
3) The help of loyal community members using, testing, and contributing to the project.
Open source is a difficult business because it’s costly to run, yet people don’t really think of it as a business at all. The way FreeSWITCH survived the first decade is very similar to how Google Chrome thrives. Google pays all the developers and the end product is used by Google to draw people to its platform and nobody thinks about the money involved. One big difference is Google is worth over 500 Billion Dollars and FreeSWITCH is a lot more scrappy and has to fight to survive. Many may consider FreeSWITCH to be a ubiquitous fixture but the team has had to work insanely hard for a really long time to make everything possible.
Throughout the history of FreeSWITCH (especially the last 5 years), countless name brand institutions discovered and started using FreeSWITCH with an estimated 5 Billion in economic impact. As new features were added and with the advent of WebRTC and Video our user-base has exploded. With this explosion came increased amounts of work to keep up with the demands of the project and more engineering challenges to overcome. The demands of the user-base has started to push well past what a handful of people can handle. Its become clear that if FreeSWITCH is to continue to grow, we needed to make some changes. In 2013 we did a large ramp-up of FreeSWITCH Solutions, the business that we started in 2008 to separate the needs of the commercial users from those of the hobbyist or more casual user, and started building out our support services. The financial support of our primary corporate benefactor helped make that possible.
Effective in 2018, the FreeSWITCH team is fully employed by its own commercial entity and not a third party. This independence allows us to focus on our vision for moving the project forward without the distractions of balancing a primary employer. By creating products and services above and beyond the standard open source we can create a more sustainable model that is a fair and flexible driving force to the project. One way we solved this is with the FreeSWITCH Advantage (created in 2016).
FreeSWITCH Advantage is a method where the commercial customer base who use FreeSWITCH as a critical part of their company pays for engineering resources and high touch assistance with their FS install.
Paid staff tend to the customer issues and requirements and there is a distribution chain where immediate updates can be pushed to production deployments.
Users not connected to FreeSWITCH Advantage have access to the public release and the developmental master branch and all other community resources that we provide such as the mailing lists, wikis, Jira etc.
All patches and pull requests submitted by community members are worked and pushed into the master branch which is always available as it has been since day 1. Public packages of this branch are built nightly for testing. These patches are handled by volunteers including the core team.
The public release [currently 1.6] is available for the less adventurous with just security patches.
When a new version is released into FSA the previous FSA version will become a public release.
I chose to license FreeSWITCH under MPL to allow commercial use. The services described above are designed for companies who deploy FreeSWITCH and need more critical engagement with our engineering team. This is how we build a path to grow and keep a massive project with over a million users moving forward in a fast-changing time for communication. Its been in practice for over 2 years now and steadily growing, allowing the commercial companies who benefit the most from FreeSWITCH to get the help they need and also provide a more stable version to the open source users.
FreeSWITCH is available to use as part of a commercial offering in all versions. If you feel that your business could benefit from immediate attention and fast updates to fix your critical problems, the FreeSWITCH Advantage may suit you well. If you are using FS public version and things are working well, you can happily continue on that path. If you are adventurous, use the master branch like always.
We greatly appreciate the community and encourage everyone to get involved. Join our mailing lists or help contribute to the documentation, become a customer if you are a business or learn the code base and become a developer. There are over 500 thousand lines of code released that you can learn about just in the core and primary modules. The module interfaces in FreeSWITCH let you write your own companion code in several languages.
We remain committed to the FreeSWITCH Open Source project and believe that this evolution in our release cycle will assure the project’s strength and stability into the future. We will have the resources to continue to grow and evolve with the next big changes to the communication industry and provide the tools that you need to be there with us.