The meaning of the term Open Source is often identified with the lack of need to pay for a software product. The desire to save, to "freebie" is not alien to the majority, and it seems like OpenSource should be the magic pill that should have saved the whole world for a long time from monsters like Microsoft, who do not require a small fee for their products. However, this does not happen. In this article we will try at the top level, without diving in particular and details to figure out what is Open Source? Why Open Source has never become that tablet. ... And is it really necessary?
Definition
To begin with, we’ll decide what
OpenSource is - this is open source software. You can not only use such software, but also work with its source code — view it, study it, make your own changes. In fact, the first author, the creator of any such program invites the whole world to co-author, and usually such programs arise precisely because of the specific needs of their creators.
Even his own philosophy of the free software movement has taken shape, the goal of which is to guarantee four basic user freedoms:
- Free use of programs for any purpose;
- Freedom to study how the program works, adapting it to your needs (open source code);
- Freedom to distribute copies of the program;
- Freedom in modifying and improving, correcting errors found, as well as publishing an improved version of the program for the benefit of the entire community.
As it happens
Do not confuse open source software with free or free software. The latter, unlike open-source software, is only distributed free of charge, but has in its license a ban on copying and / or modifying the source code.
')
A striking and widely known example of open source software is
Linux , the core of the operating system created by Linus Torvalds in 1991. The Linux kernel itself is distributed freely under the GNU GPL license. Torvalds decided to use this option, when it became apparent that something that was his personal hobby, quickly spread throughout the world.
However, oddly enough, this does not mean that all versions of operating systems based on this kernel are free. There are also purely
commercial products , for example,
SUSE Enterprise Linux ,
Red Hat Enterprise Linux - intended for corporate use. By purchasing this distribution (and in fact subscribing to updates), the buyer receives support for the obligations assumed by the manufacturer of this operating system. SUSE and Red Hat, in addition to the classic ways of making money by selling the distributions themselves (subscriptions), implementation services and technical support sell
official products with their own symbols - polo, caps, mugs, toys, office, etc.
Another interesting point, no matter how free and open Linux was, it did not appear from nowhere, resources were also spent on its creation. Over the years,
various studies were carried
out using various methods, and the cost of developing the Linux kernel version 2.6.0 was estimated. In 2004, the cost was estimated at US $ 612 million (EUR 467 million) using the person-month pricing model (a method adopted to evaluate the development of proprietary software). In 2006, another study was funded by the European Union, as a result received a figure of 1.09 billion US dollars (882 million euros). In 2008, the core development cost estimate reached $ 1.3 billion.
There are examples where the software itself really remains Open Source, in its canonical sense. However, it is also successfully monetized. As an example, you can take the Zabbix software product - a universal monitoring system for any IT infrastructure, cloud resources, services and applications. Quote from the company's website: “Zabbix - Free open source software. There are no restrictions and hidden costs. ”However, the manufacturer successfully monetizes its product, offering a
wide range of services throughout the world:
- Technical support services for corporate clients under a contract;
- System update services to the latest LTS or standard version;
- Services to develop additional monitoring capabilities for specific customer needs;
- Zabbix integration services with tasks / requests accounting systems, warehouse management, configuration management, visualization reporting, messaging and other information systems;
- One-time problem-solving sessions (for example, a staff specialist on vacation and cannot connect at all, well, sometimes the same) using a remote connection;
- Creating templates for outdated or unique equipment, for equipment of its own production, or in the case when the existing template does not allow you to get a complete picture of the state of the monitored device;
- Installation of a turnkey solution, up to on-site consultations, advanced configuration and on-site training of client’s staff at the rate of a certified specialist;
- Consulting services, including options with the departure of a specialist company to the client.
In this state of affairs there is no dissonance, the product itself remains in the Open Source category, and companies essentially earn extra services, provide the customer confidence in the stability of software updates and in timely correction of detected errors. Any person has the opportunity to influence and change such a product, by changing both individual libraries and modifying the applied software products on which the monetized programs are based or used in their composition.
Of course, most of the software products that can be classified as open source projects is the canonical free software. They are created by enthusiasts, sometimes to solve their own problems, sometimes to achieve some socially useful goal. Not all are widely used and used. This is mainly due to the applied task that the program is designed to solve.
But even those programs that are becoming quite popular, can face a lot of problems. For example, the main developer (usually, after all, is one person or a small group of like-minded people) lose interest in the further development and implementation of the new functionality, or do not find time to support the project. Either among the development team there are significant differences in the strategy for the further development of the product. Very often in this case there are branches from the parent version of the project - copies of the repository, which begin to develop separately from the main project. Here are 3 scenarios:
- The main project remains the leading "in its class";
- Fork is more successful than the project of claim 1;
- The project is bent, and die forks and their basis.
What, in this case, when the product is a classic example of an open source project costs money? Yes, by and large everything is the same as in monetized Open Source projects - specialists. Specialists who know or can figure out how a particular system works, which are able to implement a new system, update an existing one or integrate it with other systems. Very often, such specialists are unique, not exactly one in a million (although it seems that there are such examples), but within the limits of some not very metropolitan area, their most likely not a large choice.
You can hire such a specialist in the state. Its cost is often quite high. There is of course an option to take advantage of outsourcing offers from both freelancers and organizations specializing in the provision of technical support services. In this case, a freelancer, the least expensive option, but also the most risky. By analogy with software vendors selling support for their products, specialized companies also provide more guarantees for compliance with the agreements set forth in the contract and better understand their responsibility to the customer.
Cost of
To estimate the level of costs (just to estimate, it’s just impossible to calculate it at all, although the calculation may turn out to be close enough) in Open Source in your company you can:
- First you need to decide which product to use.
- Based on this, there are options for support - it is either provided by a system developer on commercial terms (which is extremely important from the point of view of understanding and adhering to SLA), or the developer does not have such a service and it is necessary to look for other ways. The disadvantages of such support are expensive and not always a prompt response, if the SLA is not based on the needs of the customer;
- Another way, as already stated above, can be roughly divided into three options:
- Finding and hiring a freelancer is the least expensive, but rather risky option, even in the case when an agreement is concluded between the freelancer and the organization, force majeure risks are the strongest. In this case, the level of expertise of a freelancer can be really very high. And maybe the opposite;
- Selection of a specialized outsourcing organization that can provide the necessary list of services to support the selected system. Something average between support from the manufacturer (where the maximum level of expertise, and usually cost) and freelancing (where the low cost of the resource is due to the low level of competence in the narrow specialization);
- Hiring an employee to the staff is an advantage of this option in full control of the resource, the ability to promptly orient the employee to the solution of a specific task. In the minuses, you can write a fairly high cost, the risk of service downtime with the loss of an employee.
- Selection of an employee \ company - whether it is the choice of support from the manufacturer or from an independent freelancer \ organization, or hiring an employee in the staff, you need to understand exactly what criteria to choose a performer. Those. essentially possess the expertise to determine the expertise. Or, again, to hire someone (organization or individual) with such expertise.
Conclusion
At the end of the article I want to summarize the resulting fabrications.
- The first conclusion - Open Source does not mean free , it is rather at the household level means freely available.
- The second conclusion - canonical application of Open Source can be obtained only for personal use , i.e. home use.
- The third conclusion is that a synonym is not always good for free ; in cases when the operation of an application or service based on an Open Source project is critical, you need to have reliable support. It all depends on the cost of downtime.
- The fourth conclusion - once the work of an application or service is critical, then its maintenance and support simply cannot be free, it’s not something that’s necessary, you have to pay for it .