Open-source describes a decentralised approach in which knowledge and material products are developed. Even though the open-source development model can be applied to many different types of products, I will only focus on the open-source development of software (OSS) in this post.
The outcomes of open-source development are usually any or a combination of the following :
Open-source software has become an important corner stone of almost any business that operates today. According to a previous survey less than 3% of respondents mentioned that their business doesn't rely on OSS in any way and indicating that the vast majority of companies use OSS: either for product development or for running business infrastructure . It was estimated that in 2016 alone, about 95% of commercial software products world wide were including OSS components .
The reasons for the popularity of OSS are manifold: OSS allows businesses to deliver more stable and more secure digital products in a shorter timespan. Additionally, overall cost for the development of these products is reduced, since part of the product development and maintenance is shared with a group of peers external to the business .
The mere usage of OSS is already established as a commonly accepted practice for businesses. The sole use of OSS is also known as OSS acquisition .
The popularity of OSS acquisition is explained by its significant returns. But how does the acceptance of OSS acquisition relate to OSS integration - a business's practice to contribute back to the open-source projects they're using? Are there any benefits of investing money and developer time into engaging with open-source communities and co-create OSS with said communities? And if so, do these benefits outweigh the costs of cutting back on time spent directly on product and business development?
Developers may spend time contributing to OSS by participating in a wide range of different tasks, including active development of open-source tools and software, writing documentation for OSS, managing projects, participating in community management and more.
Many of these tasks provide multi-level learning opportunities for employees in regards of their technical skills. Apart from offering a wide selection of tasks that meet contributors' needs and interests which help to expand an employee's skill set , OSS also provides the chance for mentorship. Developers who contribute to open-source can therefore deepen already existing technical skills and acquire entirely new ones. By picking up work tasks that meet their current experience level freely without the constraints that are oftentimes imposed in their day-to-day work, developers find a unique opportunity to expand their technical qualifications.
As active members of open-source communities, developers may hone their organisational skill set by managing open-source projects, collaborating with globally distributed teams both online and offline and leading initiatives in an environment with a usually simple, clear-cut organisational structure .
Finally, when following an intrinsic motivation to contribute to OSS, engineering teams can benefit from open-source work in regards to well-being. Apart from an investment into their own professional capital by widening their skill set, participation in open-source communities oftentimes has altruistic motives - the ambition to give back to the community from which developers already have benefitted. A sense of belonging to a particular open-source community and wanting to be an active part of it as well as the recognition by community peers are driving factors for OSS contributions to developers .
Being able to follow their intrinsic motivation, exercising autonomy and competence as part of contributing to OSS is key to increased work satisfaction for many developers .
A process for providing compensated work time for their engineers to work on OSS, benefits a company's talent strategy: Increased work satisfaction aids talent retainment. By being an active part of OSS communities, either by paying developers to contribute to open-source projects or sponsoring events or project initiatives, companies directly invest in their employer branding and expose their brand to large developer communities in a targeted manner. This helps immensely with identifying experienced talent whose skill set matches well with the requirements of a business's engineering projects . Developers who are interested in working at companies that encourage and facilitate learning and professional growth via OSS work are in turn motivated to join respective companies , indicating a compound effect of open-source focussed employer branding.
Many companies hesitate to contribute in the context of OSS projects. Business owners need to compare the cost of several downsides of OSS integration against the potential benefits. Some of the disadvantages of OSS contribution include the risk of loosing intellectual property when open-sourcing internal software, the cost for maintaining one's own and external OSS projects and the risk to reveal knowledge about critical business processes to competitors.
Previous case studies were able to confirm that the benefits of OSS integration often outweigh its cost and that returns are especially significant if the projects are of interest to other businesses. . Businesses can employ profitable strategies by paying the cost of OSS contribution and benefitting from its returns on many levels.
Even if the benefits of OSS for training your team and improving your talent strategy seem promising, you may still wonder how you can implement a successful process for your business to contribute back to open-source. Adapting the process to short-term or long-term business needs is crucial to make the investment into OSS work alongside ongoing product development or infrastructure work.
The 20% time method allocates a fifth of an engineer's compensated working time for open-source projects and related activities, including development, community management or writing blog posts. At simplabs we ensure that each IT and design professional has access to 20% time and makes use of it on a weekly basis: this boils down to 4 days of client work and 1 day of 20% time in a regular work week. Projects that our consultants work on generate tangible outcomes which are shared with the team or the wider open-source community regularly. Some of these tangible outcomes among many others at our company include:
Using the 20% time method allows us as a company to provide time for learning and training to each team member equally and in good balance with the main tasks of our business. Allowing developers to choose the initiatives they want to work on freely is an important characteristic of our approach as well; this provides the greatest potential for professional growth that suits a team member's existing expertise and inherent interests. As a side effect, our hiring process benefits from these efforts both in terms of talent acquisition and talent retention. Finally, many of the outcomes of our team's 20% time contributes to awareness of the company's brand; which in turn is crucial for any B2B business's client acquisition process.
Many businesses already found a way to provide time for their engineering and product teams using either the 20% time method or differing approaches. According to the results of a recent survey about open-source adaptation in companies, 67% of respondents stated that they were contributing back to OSS .
OSS development and engagement is hence already a well-adopted approach by businesses today and might even become increasingly popular in the future.
In this post we took a look at the impact of dedicating time on contributing to open-source. If you want to benefit from the education and training opportunities that OSS offers or if you are in need to improve your business's talent strategy, it becomes clear that implementing a process that allows your engineers to work on OSS will set your business up for success.
If you have any questions on how to get started with contributing to open-source at your company, send us a message. You can also book a workshop for your engineering team to jump start the process of contributing.
This post is based on the talk "That's what you get for letting your developers work on open-source" at HiveConf 2019.