It's hard for me to admit it but there are things, ten things to be exact, that I really hate about Linux. Sometimes I think it's just me but I do see other people stating a few of these in the forums so I'm at least not alone with some of these issues. These are in no particular order and they aren't just rants; they're legitimate problems and issues that I find annoying, destroying or cloying. Feel free to add your own to the list in the Comments section.
1. Too Many Good Distros - I hate the fact that it's so hard to choose among all the distributions (distros) to use. It's almost impossible to settle on just one for daily use. If you've seen my "10 Best Linux Distributions of 2009," you'll know why--they're all good. When I looked for a distribution to use for myself--other than virtualized ones, it was next to impossible. I finally decided on CentOS because of its basis in Red Hat Linux. It was a matter of familiarity. For most other server-oriented things and appliances, I use Debian--the King of Distributions.
2. Lacking Popular Application Support - No, Linux doesn't need to run Microsoft Office and I know about OpenOffice.org but still there's a barrier to application support for Linux. Now, a lot of the lack of application support isn't because of Linux necessarily but if you're a software company like Intuit, which distribution do you support? Do you support SUSE and alienate Red Hat, Debian, Ubuntu, Slackware and others? Or do you offer your application in several different formats and in source form? It's a difficult, if not impossible, task. Maybe if all the distro maintainers would get together and come up with a single package format but that will never happen.
3. Dependencies - Whether I'm compiling from source or installing individual packages, there seems to be a never-ending list of dependencies that I have to satisfy before I get to install my original software goal. Often I forget what it was that I started when I get buried in dependencies. Yum and apt-get help considerably in this area but they aren't perfect. On server systems, I often like to compile my apps for better support and performance so I have to spend hours downloading, compiling, satisfying dependencies for those dependencies and so on and so on. The solution isn't easy since developers will often use a diverse list of software in their own but it would be nice if they would just go ahead and package the dependencies along with their software since I'll need them anyway. I know sometimes there are license restrictions but if there are such restrictions, use a different package.
4. Rancid Fan Base - I know that the fan base isn't part of Linux but goodness some of these people are absolutely mouth-foaming and borderline crazy. Even a longtime Linux fan and semi-expert like myself, will receive hate mail about something I said. It's incredible how many "experts" (who have vehemently opposing opinions) I run into when giving my analysis of something Linux-related. I don't mind when people comment intelligently but all too often I just get weird and rancid commentary. People who think of things like Linux as a religion bring a certain 'extremist' flavor to the mix. It turns off a lot of people, not just me.
5. Linus Worship - Many of the fans mentioned in #4 above fall into this category as well. People assume that Linus Torvalds created free software and that Linux was all his idea. What they (and possibly you) fail to realize is that ideas are built upon by many people over time. Linus used Minix as a template in developing Linux though he decided to use a monolithic kernel instead of the microkernel architecture of Minix--he still had a head start by using it as a design "go by." It was actually Richard Stallman who first came up with the idea of a GNU (Gnu's Not Unix) operating system based on all free software while Linus was still in diapers. This is one reason why Stallman insists on Linux being called GNU+Linux.
6. Anti-Linux Nerds - This is a generally ill-informed group of Windows fanboys who'd rather spend their time complaining and grinching about which they know very little and contributing nothing of value to either Linux or Windows. My favorite batch of do-badders is over at linsux.org. Though not directly related to Linux, without Linux they'd only have the Mac OS to rail against and that loses its luster pretty fast, since those sandal-wearing, ponytail-sporting, Prius-driving, one-button-pressing Mac addicts are far too intellectual to bring themselves to respond to such drivel. I, however, am not--I do like a good fight. Keep 'em coming linsuxers--you provide me with plenty of posting fodder.
7. Unchattiness - This hate derives from Linux' Unix origins. Unix isn't chatty and therefore Linux isn't chatty. We should really change that. For new users, this is especially annoying. The unchatty nature of Linux is often one of the major barriers to Linux adoption among the masses. Although they don't know what to call it, that's what it is: Unchattiness. There's no "Abort, Retry or Fail?" and no "Are You Sure?" prompts to guide the user. Linux, like Unix, assumes you know what you're doing and it lets you do it. This is bad. Really bad. We need more than just a nice, sleek installer and a cute Windows/Mac-like desktop interface, we also need some feedback about what the hell we're doing when we're doing it. Come on guys, make it chattier or else. Or else I'll complain some more.
8. Built-in Virtualization - What's up with this? Built-in virtualization--right into the kernel. Now there's an innovative and bold move to be sure. KVM has been included in the kernel code since kernel revision 2.6.20. I don't have a problem with virtualization being built into the kernel but I'm wondering how they chose KVM over OpenVZ? OpenVZ seems like more of a natural fit, if you ask me, because it is container-based virtualization better known to the world as BSD jails. This type of virtualization comes standard with Solaris, OpenSolaris and the various BSD derivatives. I don't hate built-in virtualization. I hate the fact that OpenVZ isn't also part of the kernel. It would make sense to do so.
9. Software Repository Trickery - I hate that there's a lot of non-free software hidden in software repositories that you can be tricked into installing without any warning or knowledge. There should be separate repositories for non-free components and a warning when you install those components. Installing those components without my knowledge or approval is a violation of my freedom. See the Free Software Foundation (FSF) information for details. Before someone takes away your freedom, you should be warned and have the choice to refuse the software.
10. Stability - This is an odd hate but hear me out on this. For eight years, I owned and operated a computer consulting business and whenever I converted parts of my client's infrastructure to Linux, I basically hurt myself. I hurt myself by giving them something so stable and unbreakable that I found myself wondering why I had done such a silly thing. Oh, it was good for them. They didn't have to call me that they had a virus or other software weirdness on their systems nor did they have to call and say our system just rebooted and knocked everyone off. The time I spent automating their tasks with shell scripts, PHP and Perl was for naught--at least for me it was. It wasn't until I had several of my clients on Linux that I realized what I had done. I was killing my business. After I woke up, I decided to let nature take its course and allow them to use their beloved Windows and I would cash the checks.
Do you have any Linux hates to complement mine? Add yours in the Comments section.