I am a software developer for about 20 years now. I’ve had so much discussions about which OS is the best. There are so many discussions about this topic out there, but all of this is nonsense, at least for me. Why? Read on.
Aside from Amiga and Commodore, I was a Microsoft guy. I loved their software and I had real trust into this company. This changed the first time around late 2003. I switched to Fedora for about 2 years. I don’t know any more what the reason was. In the end I missed some software (Visio, …) and went back to Windows. Some years later I was awarded the Microsoft Most Valuable Professional four times. A great honor and a sign of how involved I was into this whole Microsoft thing.
I want to use my preferred tools. No matter what platform.
Now, some years later, I run Windows on the job, but Linux off the job. Sometimes I use Fedora, another time I use Ubuntu, or Mint or whatever. I use the system I like at the moment or I’d like to try. And there is one really important thing: I want to use my preferred (dev) tools to work on my projects no matter which OS I’d like to use at the moment. This wasn’t that easy some years ago. As you might know, I wrote a book about the Windows Presentation Foundation and so I did a lot of desktop stuff. That changed completely. At the moment I do only web development and there is no place for proprietary tools, libraries and platforms.
The same OS on multiple devices is not freedom.
Companies like Microsoft are trying to create a consistent experience across multiple platforms (desktop, mobile, gaming). Logically they try to bind the users to their platform. That’s a logical thing. They sell this as “freedom”. But it’s not.
During the last years I began to use a lot of different tools just to get out of my “Visual Studio Valley”. And there are so many really cool tools out there. I started to use them, on Windows, on Linux and I loved the platform independent tools much more. Because they brought me freedom. Freedom to choose the system that best fits my needs for my current project. But there are new projects with new requirements. The operating system may change but the tools can still be used. Yes, THAT is freedom.
I said I run Windows on the job. That’s because I need to run IIS and we use some parts of .NET which are not supported by Mono (I won’t do that in new projects any more). For all other things I run a VM having Ubuntu (at the moment) installed and my favored tools. I’ve chosen Linux to run my tools because it is much easier to keep the system updated and I love how easy you can set up your environment. That is the reason why I favorite Linux over Windows at the moment.
Efficiency is key
In fact it is all about efficiency. But everyone has preferences and they can change very quickly. No one should worry about the operation system because it should not be the limitation.
What do you mean?