Why Open Source Matters
Software developers need feedback to improve — open source gives you just that and more.
Join the DZone community and get the full member experience.Join For Free
Open source is also a philosophy of freedom, meaningfulness, and the idea that wisdom should be shared.
The practical consequences of software being open are far-reaching and have great significance — much bigger than an uninvolved observer would guess at a first glance. To see the consequences, you need to take a look at a big enough project. Or even better, at an entire infrastructure, consisting of open source projects.
Collaboration in Open Source
A big advantage open source brings is collaboration. This might sound obvious but it has several forms:
- The collaboration between companies, even competitors, contributing their own piece to the common open code, results in multiple-times better products, compared to standalone work.
- The collaboration of academics. The best results were always done with academic precision.
Research and Academics in Open Source
Researchers prefer to spend their valuable time working on open code and open research. Some run their state-of-art static or formal analysis tools as part of their research upon open source projects and then send patches.
Some design well-defined APIs, for example, UNIX POSIX. Others solve known problems using open source platforms as a base, for example, NixOS, which solves so many problems with packaging.
But why do academics prefer open code? Not only because open code is more accessible. Some of them prefer open code, due to a philosophical point of view — since a code is similar to a mathematical equation or other scientific findings, it should be published publically.
A code should be perfect, consistent, and bug-free. That’s why collaboration with people having this mindset is invaluable.
Community and Collaboration
Community collaboration: There is no small amount of excellent engineers contributing to open source in their free time either for fun, own needs, belief in open source philosophy, or to help other people and seeking sense in their work.
Informal collaboration: Mailing lists, IRC channels, Stackoverflow, blogs, and forums. Everyone who developed a closed-sourced project knows what I am talking about. How much easier is it to find needed information about an open source project, whether it is a guide, documentation, explanation of error message, or bug. This makes work on open source projects much more effective and simple.
Verification in Open Source
The verificatory side of collaboration is crucial. The amount of eyeballs controlling your code, again and again, is a huge advantage, compared to the closed-source way of a one or two-person, one-time review. For the same reason, Linus Torvalds said:
I made it publicly available but I had no intention to use the open source methodology, I just wanted to have comments on the work. — Linus Torvalds
Different people have different ideas and points of view. The involvement of lots of computer science experts makes the results far more promising and objective.
The overall time diverse people spend working on open source is much bigger than the costs any corporation would be willing to pay for their closed source equivalent.
But there is much more about open source than just better collaboration. Open source is also a philosophy of freedom, meaningfulness, and the idea that wisdom should be shared.
People would rather create something that makes sense and that might help other people, as we are social beings. Also, using something without the necessity of being bound in any way.
Imagine a Closed World
Now, just for contradiction, let’s imagine everything was closed — even standards and protocols in one big monopoly.
You would be forced to use only their technology, to buy services or updates to be able to work as usual. And what’s worse? What if the company stops to deliver or support something, you really need? For example, the format of some of your files, which are important to you, is changed. Now, you cannot really use those files after an update.
Sounds scary, doesn't it?
Let’s rather imagine an open world, where absolutely everything is done in an open source manner, even cars, electrical appliances, everything. I believe that now you got the importance of open source philosophy as well.
Open source is the future. It’s modern and it’s the right way to go from many points of view. Even 'big players,' who initially didn’t like the idea, are now involved — at least partially.
But how can we adapt to these changes? How it is possible to be in business with open source?
What are your thoughts on this topic?
Written by Július Milan
Published at DZone with permission of Julius Milan. See the original article here.
Opinions expressed by DZone contributors are their own.