Open Source often means free software. That what most people think about first when they hear the term. This isn’t always helpful.
Anyone can download an open source program. You can run it, copy it and pass it on to friends and colleagues.
But that’s only the start and isn’t the most important thing.
The more far-reaching aspect is that you can look at the code. You can see how the developers made the program.
If you have coding skills you can figure out the assumptions and decisions the developer’s made when they wrote the code. If you see cool ideas you can lift them and use them in your code.
Best of all, if you can spot something wrong you can fix it. If you see a way to improve the code, you can do it.
You can even take the entire program, tinker with it, and release your own customised version. Although if you do this, the usual deal is that you must make your version as freely available as the original. That way others can follow your work.
Any code can be open
Any piece of code can be open source. There are code snippets you can use to perform simple tasks, applications or even operating systems. Some of the best known operating systems are based on open source.
None of this means paying a license fee. It doesn’t break any laws. You have permission to do all these things.
As we’ve already seen, money, cost or the lack of it, is not the most important point. Open Source advocates think of word free as in ‘free speech’, not ‘no payment’.
Freedom means that users can change the programs to suit their own needs. That would be illegal with most other forms of software.
Open Source freedom means responsibility
There is a restriction: if you use Open Source code, you must, in turn, pass the same set of freedoms on to everyone else. You have to make altered Open Source programs available to everyone.
This approach decentralises control. In turn, that means developers continually improve the software.
At the same time, having large numbers of people looking at and improving programs make it easy to hunt down and kill bug. That improves quality control.