Why could choosing open source software help your business avoid costly mistakes?
Choosing a new software platform is a big task for any business with many factors to consider. Often decision makers focus on immediate issues relating to specific business problems but it is important to also think about the future of the business and its strategic needs.
Implementing a new software system will inevitably lead to some disruption in a business as data is migrated and staff are trained. Businesses will see the implementation spend as ‘sunk costs’ and persevere with a system, finding ‘workaround’ solutions to meet the needs of the business. Additionally, depending on the technology vendor, the platform can become not fit for purpose over time if it does not keep up-to-date with market trends. Finally, as the business grows, its needs and technology requirements may change and the incumbent software may no longer be a viable solution.
To avoid these common pitfalls it is important to make the correct strategic decisions at the start of the project and assess all risks before making a large-scale investment in software for your business.
Common risks and how to avoid them
Risk number one: vendor dependency
If a business purchases proprietary software, the vendor retains intellectual property rights and source code copyright which can pose problems depending how the product is used, as the software license will be subject to restrictions on commercial use, distribution and modification.
It is typically not possible to test every feature and piece of functionality before purchasing an off-the-shelf solution and therefore the business is reliant on supporting documentation from the vendor which can be limited. To overcome this problem the business may require vendor consultancy sessions or to partner with accredited specialists who have in-depth knowledge of the system. This is an additional cost to the business that should be factored in when evaluating solutions.
If a business selects a solution based upon open source software this risk is minimised as there is no lock in to a single vendor, with a whole community of developers available for most open source platforms with the ability to read the code, providing a wider choice of developer support for greater transparency, cost-efficiency and further system customisations as required.
Risk number two: lack of service and hidden fees
Decision makers in a business may be reluctant to adopt open source products due to a perceived lack of service/support without a specific vendor responsible for the platform. Whilst there is a perception that it can be more difficult to receive quick responses to support queries, in reality, this is no different to a service level issue a business could have with any vendor. The business should research the open source vendor that develops the software and find out as much information as possible about its business model and support options. Typically, the vendor will offer a free version of the software with additional services that can be purchased such as consulting or support.
Risk number three: product bugs and short release cycles
All software platforms will experience bugs but the more thorough a company is in its QA and testing process, the more likely that bugs will be identified and resolved. The quality of a software solution does not lie in its absence of bugs and errors but rather, in the speed and quality of reaction to them. Open source solutions will have an open bug tracker which users can log bugs in, review previous reported issues and see how quickly these are rectified. This is much more transparent than proprietary software.
If a vendor uses short release cycles this can be costly to a business as it may need to install new versions frequently which can cause some disruption. If the business continues operating on an older version of the product, it will need to ensure that it is still supported. Vendors will sometimes abandon legacy versions in favour of accelerating speed of development but for customers using these systems, it can be costly and time-consuming to migrate to the new version or even damaging to daily operations if the software does not have backward compatibility (the ability to use interfaces or data from previous versions of the system).
To mitigate these risks, it can be useful to explore the development process for different systems on GitHub or other similar resources as this can give you more of an accurate picture than, for example, a product roadmap.
Risk number four: high entry threshold for specialists
A key issue to consider is the technology which the software is built on and the availability of specialists on the market. If a vendor uses a rare technology or requires certified specialists, the cost of developers and support staff will be much higher than solutions built on more mainstream platforms. In contrast, selecting open source technology which uses common technologies and popular programming languages means you will have a larger pool of developers to choose from, keeping costs down. Open source vendors are also more likely to offer forums with free teaching materials and resources to develop in-house skills in the customer business.
Risk number five: operational problems
It is clearly difficult to assess if a business will have operational problems with software it has never used it before. However, decision makers can build an initial understanding from free support sites and forums. Using these platforms a business can research the size of the community engaged with the product, levels of customer satisfaction, common problems faced and how the vendor handles these - if tens of thousands of users are present with few common issues and problems, it is highly likely that the software is robust and reliable.
Examples of robust and reliable open source products
There is a vast range of high-quality open source solutions available. At Haulmont our tech teams assess technology systems according to the needs of each business and issues of efficiency of development and deployment, availability in the market and product maturity when choosing which platforms to use when building our own products. Amongst those that we use on a frequent basis are:
- PostgreSQL - the solution is supported by a large number of companies, including on a paid basis
- Activity, Apache Tomcat, HSQLDB – are all high-quality solutions with paid support available
At Haulmont we have been creating complex enterprise solutions since 2008. We launched our CUBA (now Jmix) technology platform and development tools in 2015. Today CUBA (now Jmix) is used by 23,000 developers across the world. We use CUBA (now Jmix) to develop our own internal systems, products and custom solutions which are used by over 400 companies across 40 countries worldwide.