This topic has crossed my mind before but after reading this Google Plus post I have decided I would like to pose this question in a public manner. Why are some developers so opposed to using Linux? Complaints are aimed at all different things about Ubuntu or simply Linux in general (that also brings up a secondary question, why are the developers that are using Linux using Ubuntu?) . Some complain about the UI not being simple enough, some even complain about editing a configuration file. You write code for pete’s sake! Why is it so hard to learn about the system you are using? If you can write a line of code, you are smart enough to edit a configuration file. If you are smart enough to write a line of code, you are smart enough to figure out how Gnome works. And then guess what, you actually understand how your system works and how to configure it the way you like, why would you not want a configurable system when you are a programmer? It makes no sense not to.
I know the main argument that you will here in response to this is “I’d rather spend time programming and making money than learning how to configure my system.” There is something called a capital cost people, spend a day or two (yes, it only takes a day or two to learn most things) and you will benefit from it forever. Then you don’t have to pay for your OS anymore, you will become a stronger programmer because you can use the terminal (IMO you’re not even a programmer if you can’t use the terminal, that’s just sad), and you can stop complaining and sounding ignorant on Google Plus posts
.
Am I way off here in assuming these are the reasons why some developers hate on Linux? I can understand certain situations such as developing on a mac so you can make iPhone apps (even if it is evil). The issues that I was addressing are clearly different from that however.












You’re right, a programmer should be able to tool around with a configuration file here and there.
Linux is not a “corporate-backed” OS. If something isn’t working correctly it, you can always fall back and pin the blame on Apple or Microsoft for the failure. You just can’t do that with Linux.
Linux forces you to go “under the hood” at times and this can scare the shit out of people. If all you do is write PHP and some SQL all day, why would you need to know your command line? That being the case, if you don’t need to know something, you likely don’t.
I personally use Debian for my OS at work, but when something goes wrong I have to stop and fix it. This may give me knowledge, but at the end of the day I am paid to produce code, not make my laptop run better. Every time my wireless driver fucks up I have to stop what I am doing and work to fix it. That is not the case with Windows 7 or Lion.
Yes there are problems with the lack of freedom present in the other major choices, but that excess of freedom in Linux can be overwhelming.
Just my $.02
Mono is my connection to Linux. Almost everything I know about C# on Windows is supported on Mono for Linux.
http://mono-project.com