domenica 17 novembre 2013

What is (for me) Open Source?

A few weeks ago I was doing an interview about the past PGDay.IT, the national event related to PostgreSQL; the very last question of such interview was about my understanding of Open Source.
Well, it is not simple to give a quick answer to this question, and therefore I try to write down some thoughts about what I believe it is the Open Source.

My opinion is that Open Source is not fully related to writing code and programs, it is more a mindset. Open Source means curiosity, the will to learn something more, to understand how a piece of the world is working.
Everyone, at least one time in his whole life, has opened some piece of hardware: the computer, the VHS, the car hood, a lamp, and so on. This is the Open Source mindset: curiosity to explore how something become a working thing. And this curiosity is what makes  a professional: the need to understand something more, that will help him to acquire new knowledge and, therefore, to be able to apply such knowledge in his day-by-day work.

The above is the real important part of Open Source: it is a culture, not a technique!

Now, Open Source has also several myths, the most common one being that since the "code" is open, it can be audit by so many users and experts that is has to be 100% correct.
This is not my opinion.
First of all, complex code requires very high skills and context knowledge, and therefore it does not mean anything releasing the code as Open Source if only a few people are able to "understand" such code.
Second, being available to everyone does not mean that anyone is interested in reading the code.
Therefore, Open Source code is not a silver bullet for quality, but rather a starting point to get new ideas (let's call the branches) and new improvements from other people.

What about the money? Well, Open Source is generally cheaper than proprietary software, and this is often good except when the management start thinking that if it does not cost anything it means it is not worthing at all (a quite common mindset in my opinion). The key point here is different: it is not the fact that Open Source does not cost anything, it does cost, but often for related services. That is: "take this software and use if for free, and if you need some assistance please hire me and I will help". Does it mean that the for-free version is a low quality one? It depends on who is making it available for free, but generally it is not.

Last but not least, a small thought: does really exist proprietary software? After all, almost every software is created, maintained and improved by different programmers, that means there are several people knowing how the software works. And this makes the software not-proprietary, or better, proprietary to other people. In other words, there is not a real proprietary software, there are only people giving up their rights.

Nessun commento: