This year I had the chance to be appointed as member of the program committee for LinuxCon Europe, which will take place in Düsseldorf from October 13th to 15th.
Discussing about the opportunity for programmers to attend such an event I was faced with a disrupting statement: Windows would provide a better work environment for coding than Linux. More functionality, with a lot of applications, no need to rummage around in a terminal and if something goes wrong, only one person to blame: Microsoft – whose dedicated team is then paid to fix bugs you encounter.
A reminder of what free software is about and why it is worth the effort running Linux on at least one – if not all – of your machines seems to be opportune.
While a growing number of open source products offer a nice and user-friendly interface (download Libre Office or have a look at Gov dot UK website and you will quickly get an idea), the free software model was originally not designed to make things easier for us to work.. But to set us FREE – to the extent that we would want it.
The idea is simple: from the moment you legally acquire the software – whether because it’s available for free download, or because you as a company have paid a few hundred K to have it developed by a third party – you become entitled to use it, study it, modify it and share it depending on your needs without asking for prior permission, without any license fee whatsoever.
This supposes that on one hand, the vendor is not tracking your activity – you are free – and on the other hand, you have access to the source code of the software to do whatever you fancy with it – you can now understand why “open source” and “free software” are just two expressions meaning exactly the same thing.
“Fair enough, but why would I go for Linux while Windows provides me with all the features I need as a programmer to do my job?” I hear you ask. “I don’t really have time for playing with the software I use as a tool, I have enough work with the code I develop for my company”. All right… Let me tell you why, then, you should give Linux a chance.
First of all, you know that already, because as far as you are willing to devote some time in learning how to use the kernel, you can then customize it the way you want. Your work is not limited anymore by the system designed by the vendor. A functionality is missing? Go and create it. You are now in full control of your machine; not the other way round anymore.
Secondly, if you have no time for changes and fixes, the Linux community is far bigger than the debugging team a single company can manage. And here comes the Linus’ Law: “Given a large enough beta-tester and co-developer base, almost every problem will be characterized quickly and the fix will be obvious to someone.” This means most bugs will be dealt with quickly; the community being then heavily composed of programmers, it is very likely that the functionality you need is already available on a forum somewhere.
Thirdly, think about security. Only “root admin” of your computer will be able to modify the system; viruses, who usually only get basic user’s access, will then unlikely damage any major component – if ever you open a malware attachment, you would indeed need to go through a few steps to actually authorize its installation into your machine.
Finally well… Be aware Linux is used everywhere now – television sets, mobile devices, web platforms, cars, supercomputers… Be selfish, think about the career possibilities that will unfold once you’re a Linux master and GO FOR IT!