One of the enticing things about open source software is its almost universal price tag: free. Another enticement is your ability to start testing and using an open source solution, usually without going through barriers, such as creating an account on a platform website, or downloading software from a proprietary source and possibly exposing yourself to an unwanted marketing blitz. Instead, just go to an open source project’s GitHub or GitLab page, clone the repository, glance at a
README file that could be written to a varying degree of usefulness, and get started.
While for some projects and scenarios, this approach could be fine, for others, you might need to put the benefits and drawbacks on a scale to make sure that the choice that you make, between self supporting an open source solution, and paying for support, is reasonable.
LINBIT®, the company behind the development of a few open source software storage solutions for high availability, and software-defined storage, earns revenue through customers paying for support of the otherwise free software that it develops. This article will discuss the benefits of paying for that support.
This is an overview article and not highly technical reading. Still, a technical person might find this article useful, if only to offer some possible ways to engage someone less technically minded, for example, a supervisor or project manager, and convince that person that it might be time to pay for support services, rather than self support a solution “in-house”. With that in mind, here are some benefits of paying for support for open source software.
Access to Expert Knowledge
You might want to pay someone else to support an open source solution for you because you know that you will be getting support from experts. This is especially true if you buy support from the developer or the developing company that created and maintains the software. A developer will know the code inside and out. Similarly, solutions architects and support engineers will have expert level knowledge of the software because they work with it daily, in a variety of situations. They will have the experience not only of many successful deployments but also common mistakes or issues that might take an in-house support team longer to troubleshoot and resolve.
Cost savings can be another benefit to paying for open source software support. This is not always the case though. You will have to evaluate some factors, for example, the time that you might spend or anticipate spending on supporting an open source solution in-house, the salaries of your team members who will be supporting the solution, the possible loss of productivity revenue if those team members spend time working on something that is outside of your core business, and other such factors. You will then have to compare those costs with the cost of paying someone else to support the solution.
Often, software support that you buy will be less expensive than supporting the solution yourself. This is because the support company will typically have many customers that it supports. The support company can therefore spread its costs out across these customers to be able to offer a support price tag that is lower than what it would cost you to self support. The model is perhaps similar to the insurance model, where not all insurance policy holders make claims at the same time against their policies. In the insurance model, premium payments from policy holders who aren’t making claims, pay for the active claims.
Faster Resolution Times
When you pay someone else for support, you should have a service level agreement (SLA) with them. This SLA will typically define not only the scope of support but also the hours of support and usually a guaranteed response time for your support requests. Often support will be available 24×7, although different support price tiers might define response time differently.
If you self support an open source solution, you might be able to find your support person quickly. Perhaps that person is in the next cubicle over, or a chat message away, but do you have an SLA with that person? Likely not, or if you did, was that a puzzler for your legal team to figure out? What is your recourse if your in-house support person cannot solve your problem or is taking too long to respond?
Having an SLA with an outside support company ensures that you will receive response times to incidents and support requests that are consistently faster than what you can provide for yourself. The SLA is also an incentive for the support company to maintain timely responses because there is recourse for you if they fail to uphold their end of the SLA.
Customizing an Open Source Solution to Your Needs
As mentioned previously, by using the company that developed the open source software to support your use of the software, you will have access to the knowledge of experts. These experts will often include solutions architects, developers, and a team of support engineers. These experts will have worked with other customers and have seen a variety of use cases, including past issues. From the start, they can help you deploy the software solution in a way that fits your use case best. If your use case is novel, because the software is open source and because you will have access to its developers, then your deployment can be customized, if feasible, though possibly at some extra cost.
Features and Functionality
Another benefit to paying for support is that you can get access to features and functionality of an open source solution that might not otherwise be available. Sometimes, these features could be a convenience, such as access to prebuilt packages and updates, so that you do not have to build or rebuild the software from its source code. You also might get access to some additional software, that is not open source, but compliments an open source solution. For example, the GUI for LINBIT SDS is not open source but it is provided complimentary to LINBIT customers. The GUI can be a convenient way to manage and monitor LINSTOR® and DRBD® clusters that would not otherwise be available.
Benefits of Honorable Mention
While the preceding benefits are real, by paying for open source software support, you might get some benefits that are not as obvious but also provide some value.
Focusing on Core Business and Services
One benefit that has been alluded to already is that by paying someone to support an open source solution for you, you take the onus of support away from your team. This allows you and your team to focus on your primary roles, which should more directly relate to your core business and the services that you offer to your own customers. This can also be a way to maintain good morale on your team. Your team might otherwise feel distracted or burdened if they feel that they are taken away from primary tasks to support “someone else’s” software or service.
Stability and Sustainability
Open source software solutions might come and go. That is a reality that might have hit you painfully in the past, any time that you were searching for a software solution, found reference to a great sounding one in a blog or forum post, only to go to the project page and learn that it hasn’t been in active development in over a decade.
If an open source solution is working well for you, consider paying the development company for support if you are not doing that already. By doing so, you help that company pay for the continued development of the software. This ensures that the solution keeps pace with advances in technology, and keeps it useful and relevant. While not a guarantee, in most cases, if a company continues to earn revenue, it will continue to offer and improve upon the services and software that help it to earn that revenue. This provides stability to its customers and users of its software.
I dislike the buzzword sustainability, because the word is overused to the point of being meaningless. However, if there was a time to use the word related to open source software development, now seems a decent occasion. We at LINBIT are grateful to our customers who have helped sustain our open source software development for over 20 years.
The Potential Drawbacks of Paying for Support
To speak of benefits without discussing possible drawbacks to paying someone else to support an open source solution would be disingenuous. Sometimes, it might not make sense to pay someone else to support you, depending on how significantly you rate the drawbacks against the benefits.
If you are paying an outside expert for support, that could be expensive, especially for smaller or startup companies that might not have a solid enough revenue stream to sustain paying for support. It could be that supporting a solution in-house, or else paying for support on a per-incident basis, could be more cost-effective in the short term.
If you do decide to self-support, LINBIT does have a plan called DRBD Starter that is a reasonably priced subscription which provides access to LINBIT customer-only software repositories. This plan is designed for customers who want to self support but want the convenience of prebuilt software packages and updates from an official source.
If you rely on an outside solution, you might be creating a dependency on that solution that you are not in control over and could put you at a risk. For example, your ability to customize the solution or switch to another vendor could be limited. Or the vendor could dramatically increase its prices, discontinue an offering, get acquired by another company, or even go out of business.
To address this potential dependency risk, one of LINBIT’s core values and guiding principles is that as a customer, “you’re in control.” In terms of using its software to make your storage and data highly available (HA), this means that the LINBIT HA solution does not hold your data hostage. Your data is always yours. Should you find yourself in a recovery situation or if you want to take your data elsewhere, your data remains accessible to you by using common, universal tools that are independent of LINBIT software.
This LINBIT core value that “you’re in control” also refers to the open source model. This is a model of trust between LINBIT, the software developer, and you the customer. Technically, open source is defined by the legal terms of the licensing to the user. Practically, it is also about an open development model. Users get better insights into the development road map, the open issues, when bug fixes arrive, and so on. Users can even become contributors!
If an outside support team is located in a different time zone or speaks a different language, there could be delays or miscommunication issues. LINBIT has support engineers, developers, and solutions architects based mostly in the EU and United States. It also has presence in China and a partnership agreement with a support solutions company in Japan. LINBIT team members speak and write in a variety of languages, including Chinese, English, French, German, Spanish, and Turkish.
Choosing a Support Solution
If you currently use, or are interested in using any of the LINBIT open source software offerings, such as DRBD, LINSTOR, DRBD Reactor, LINBIT SDS for Kubernetes, LINSTOR Gateway, or others, and this article has given you enough reasons to become interested in paying for expert support, you can contact us at LINBIT to discuss the different options available. You can also check out LINBIT open source solutions for yourself at the LINBIT GitHub repository and admire some current commit dates 😉.