Continuing the conversation on Open Source, in this episode I look at the motivation behind why it exists. Why would individuals, groups and even organisations give up their time, their work, and their intellectual property for free?
Or listen at:
Published: Wed, 11 Aug 2021 16:32:37 GMT
Hello and welcome back to The Better ROI from Software Development podcast.
In this episode, I want to continue talking about Open Source. In the last episode, I gave you an introduction to it and what you need to think about in terms of governance.
In this episode, I just wanted to take a little step back and talk about why Open Source exists - predominantly the motivations behind Open Source.
If you think about it, a lot of Open Source is about giving stuff away for free. This includes people's work, people's time, intellectual property even - giving it away for free.
Why does that happen?
Let's start with who creates Open Source. It can be individuals, groups, organisations.
As an individual, I may create an Open Source project or contribute to an existing one as a group of individuals working around an Open Source project - people who might not know each other in any of way other than the work they do on the open source project - or as an organisation supporting existing Open Source projects or Open Sourcing their own proprietary software as Open Source.
As I say, this is giving up people's time, people's intellectual property for free, so why do they do it?
Let's start with individuals.
Sometimes it can be as simple as for fun. It's not uncommon that if you're a developer in a corporate environment, that your work can become quite dull, repetitive, the same over and over again. Being able to engage in work on a project that you feel is important, producing a product, an open source library maybe, can be seen as fun and is often one of the main contributors to spending their own time doing stuff.
It could come from frustration, frustration of something not working. They want the way they want it to work, so they may build an alternative to something that already exists.
They could be using it as a learning exercise, maybe a new technology, a new process, a new way of doing stuff, something they may not be able to do in their normal day job. They're using an open source project as a means of being able to gain that learning.
And there is also notoriety, bragging rights even, about being able to say "I've produced this piece of software", "I've produced this work". In some software circles, that can really help an individual's brand and make them much more valuable in terms of their work, because they have gained that notoriety, that bragging rights of "I've built this", "I've done this", "I know this".
And it can be quite an accelerator for an individual in their career path to be able to showcase their work and their capabilities through Open Source - rather than just levelling up the career job by changing their job role every three to five years.
Some individuals may also try to leverage it into paid work. Previously, some of the Open Source packages I've produced and made available, I've managed to obtain additional paid work on the site to effectively implement those software packages into other people's software. And you can get small amounts of work off the back of that. More often than not, there isn't a lot of work out there to do that, but it is possible and certainly some individuals will be using that to grow almost a software house type business around it.
And there is also the feeling of just giving back. So much now is freely given within the software development community, so many people are out there writing blogs, recording podcasts, producing YouTube tutorials, producing open source, there are so much free work going on - everybody is gaining from that work - a high tide floats all boats.
There is a lot of people putting their time and effort in to making the industry better. Each one of us benefits from that and, as such, it is not uncommon for people to just simply give back.
So let's talk about organisations.
Why would organisations want to be involved in producing and making available Open Source?
Sometimes it's the advancement of the software by making the software available. They're effectively able to get additional contribution to it, almost free developers. Developers working on it on their behalf to make the software better - maybe looking at the software that's there, maybe finding new use case, new ideas, more sets of eyes, helping to identify bugs or security problems or potential improvements.
In some cases, the organisation is trying to work on building trust, being able to work in the open more than previously. Microsoft is a good example with their .NET development framework. Previously, this was all proprietary. Nobody could tell how the code worked internally. Over the last few years, Microsoft has taken a massive leap to make that Open Source. They've made it available. They brought it out into the open so that any developer can look at the source code, and see what they're working with and understand how it works.
Now, Microsoft has benefited in multiple ways from that. Firstly, that trust factor, the understanding of how the software works, what it's doing - people can see what it's doing. But they have also benefited from the advancement of the software itself. More contributors looking at a code, more contributors making improvements. Now, there might be small in some cases, but with so many people looking at it, the more those small improvements build on each other, the greater the movement of that software.
It can also help an organisation with recruitment. If they've got a very specific piece of software that they want everybody to use in their organisation, but it's good enough to be used elsewhere by being able to make it Open Source potentially. You've then got a whole bank of people that have experience with that software.
There are a number of organisations out there that have released previously proprietary code out into Open Source people like Facebook, Airbnb, Twitter, Google, Microsoft - they've released that source code out into the wider community. And by having it in that wider community, they've increased the amount of people that know how to use that software.
So if they need to recruit additional people, they've got people that can hit the ground much faster, much more capable, much more able than if they hadn't. That they were coming in day one, they'd have to spend six months maybe learning this software product, whereas once it's Open Source and it's got wide adoption, then potentially you could be recruiting somebody in that's got three, four,five years worth of experience in that software product - which would never happen if it was proprietary.
Organisations may also look at making it available as part of a different revenue model - so that software may be their main thing, but they may then charge for support, possibly. They may release the software, and licence it and make it available freely, but if you want support for it, you have to go to them and a charge.
Or maybe they have extra features - enterprise features - that are available in a different version of the product. Again, finding ways of being able to monetise that Open Source software, they effectively make the software available through the Open Source mechanism, but then find a way of monetising on top of that to gain revenue, to run the organisation and continue to support the Open Source.
And again, similar to the individual, organisations sometimes feel they just need to give back. So many of those organisations, and all organisations these days, are benefiting from Open Source. They are benefiting from people's free time, their ability and dedication to provide free work, to give away intellectual property - so why wouldn't an organisation feel that it's gaining benefit, why wouldn't it feel that it should come back and actually also give back?
So in this episode, I've talked about some of the motivations behind Open Source.
Initially, it can seem quite confusing - Why would somebody give up their free time? Why would somebody give up their free work? Why would somebody give up their intellectual property?
Hopefully through this episode I've giving you some sort of idea why individuals or even organisations may choose to do that - may choose to give up that time, that money, that intellectual property freely and make it available for others to build on, others to work on and to make the whole community better for it.
Next week, I want to take a deeper dive into the Open Source licences available and what implications they have to you as an organisation.
Thank you for taking the time to listen to this podcast. I look forward to speaking to you again next week.