Every few years, I have a brief stint with Linux as my primary operating system (dual booting with Windows for gaming etc.). Each time I try Linux, I hope “they” have finally fixed all the little annoying details that made me quit last time. And this time, I thought it was finally for real, and I lasted longer than ever before. But in the end, like every other time, I left disappointed.
Let me do it my way!
It all began well: Around a year ago, Microsoft was getting on my nerves again by forcing some uncalled-for changes and patronizing behavior down my throat in some Windows update or another, as they are wont to do. Being a power user, I enjoy the freedom to do things my way, and Linux is nothing if not catering to that need – if you want to change it, you can.1 And since I’m a bit of an idealist and really like the idea of free and open source software, I decided to try my luck with Linux again.
I had always used Ubuntu previously, but I didn’t like where they were going with the Unity desktop environment. I decided to briefly try a few alternative flavors of Ubuntu, but I couldn’t feel at home in any of them. Finally I settled on Linux Mint and its Cinnamon environment, which 1) felt familiar coming from Windows, 2) has a “your choices” philosophy wherein very little is forced on you, and 3) is based on Ubuntu and is thus compatible with the larger Ubuntu ecosystem.
Then came one of the parts about using Linux I enjoy the most: installing applications. Being able to install almost anything by executing a few simple commands in the terminal is simply wonderful. The terminal experience in general is vastly superior to that of Windows.
Broken here and there
Then, after using it for a few weeks, came the part about Linux I enjoy the least: A complete and devastating system failure which was nothing but my own fault for not RTFM (in my defense, the documentation wasn’t particularly clear on the “wreaking havoc on your system” part). It was not exactly sudo rm -rf /
, but the effects were similar. Remember, with great power comes great responsibility.
Thankfully I had my home folder on its own partition, and I had saved all the commands I used to install software to a text file in my home folder, so I basically just reinstalled Linux, executed the text file, and voilà, one hour later I was back to my pre-crash state. Can’t help but love Linux in those moments. Windows would have me spend the better part of several days getting everything back to normal.
Then followed months of normal use, wherein I tried to fix several annoying and obscure problems. Most of these were related to hardware and drivers, and thus not something I could easily fix. Video stuttering issues when connecting to my TV over HDMI was one of them, which I spent a few weeks researching until I discovered that it stopped entirely and immediately if I just switched off my PC monitor while watching TV. Significant tearing in YouTube videos in Firefox (my browser of choice) was another one which took significantly longer to find a solution to, but here, too, the fix was deceptively simple (Mozilla had disabled some parts of the hardware acceleration, which could be re-enabled in about:config).
Okay, that last one sounded a bit trivial, so let me rephrase: I had to spend hours upon hours of research over the course of a few months, giving up and picking up the thread again later, just to be able to view YouTube videos (in the browser that shipped with the OS) without errors so glaring even your grandma would have been annoyed at them.
Dual booting is a pain
All the while, however, other problems that I could not fix were nagging me. Shutting down was a five-minute process for reasons I could not get to the bottom of. Fonts in some programs looked awful. Some bugs in Darktable (a free Lightroom alternative to edit raw photos) were killing the mood in small ways. Et cetera. But most notably, it was the dual-booting that got on my nerves (looking back, it always was).
The thing is, my need of Windows more or less dooms my Linux use from the start. I enjoy playing video games, and Linux gaming is still far from optimal. Some AAA games are arriving on Linux nowadays, but they are few and far between. Poor driver support means the performance is suboptimal, and sometimes the graphic quality seems a bit worse, too. And don’t even get me started on audio – sure, my Creative card outputs sound if I plug my headphones into the rear panel (the front panel doesn’t work), but there is nothing of that headphone virtual surround goodness (which actually is a neat effect) or automatic switching to/from headphone settings.
I also need Windows for other reasons. Most notably at the moment is using remote desktop to my laptop at work when I’m working from home. I could get it working in Linux after some hassle, but the performance was abysmal. And while we’re at the subject of my job: Previously, a large part of why I liked Linux was that the developer experience was better. However, now I’m working with .NET, and it’s Windows all the way (which I was surprised to find was totally awesome after just a few weeks with Visual Studio and ReSharper).
Because ideals
I can hear you asking – since I will always need Windows anyway, why do I even bother? Is Windows really that annoying?
Well, no.
Perhaps the main, underlying reason for my using Linux from time to time is the latent idealism in me about free and open-source software. But how far am I willing to go for my ideals? You may have have noticed my careful phrasing up top that I like the idea of free and open source software. The actual software is, for obvious reasons, frequently subpar compared to commercial alternatives. Gimp and Inkscape are fair replacements for Photoshop and Illustrator, but I just can’t get used to them. And video editing in Linux? It’s utterly horrible, compared to the likes of Premiere Pro. Attempting to edit my Easter holiday video in Linux was actually the last drop that made me give it up altogether this time.
I was a bit sad to wave goodbye to Darktable, though a mere hour in Lightroom convinced me that it lets me get the look I want easier and faster, even after my Lightroom skills have deteriorated for a year. And during that time Lightroom has gotten a few new neat features, such as merging to raw HDR or raw panoramas (or both). Plus Lightroom is vastly superior in terms of organizing your photo library.
I mean, sure, you can’t beat the price of the free alternatives. Adobe software in particular isn’t exactly free. But in using most free software I’d easily pay the difference with my time due to less efficient user interfaces and a lack of features to get the job done quicker.2
After I had just started using Linux this time around, in the high of my “free/libre software is the best” mood, I was planning on writing a blog post titled something like Free software is worth using, wherein I would argue that it’s worth suffering through subpar software if it’s free and open source. You know, because ideals. I’m glad i didn’t write it and make a big fuss – all the more words I’d have to eat now.
Let’s just hope I remember all this the next time Microsoft force-feeds me some patronizing changes and my inner self starts screaming about ideals.
Top image: My dual boot screen with Midna by Ahrjey on deviantArt.
Linux is probably best left to running servers and used in ways that have dedicated development like with Chrome OS or Ubuntu. But even then you have to consider how few hardware makers even dedicate much time to Linux these days. Can’t blame them when the whole Desktop Linux ecosystem is so fragmented. This is why I don’t even consider leaving Windows because the support for hardware just is so much better. Even for something basic like hardware acceleration in browsers in Windows hardly makes a showing in Linux even today. So much so even Google refuses to address it in Chrome on Linux. Yeah, just too many fundamental issues that turn me off with Linux desktop.
I would have to agree. So many fanboys and people in the community will have you believe that it’s evolved to keep up with Windows and Mac. That’s all in theory, and “on paper” so to speak.
Yes, the UIs got nicer. Yes, steam has made gaming much more viable. Yes, more stuff can be done without the terminal. This all sounds fine and dandy until one day you go to do something ridiculously simple, some stupid little every day task that anyone should just expect to work – and it doesn’t.
So then, you’re stuck googling how to fix whatever problem you’re having on you’re distro, and pray that it
A. Pertains to your distro
B. Pertains to your distro version
C. Pertains to your UI
D. Pertains to your hardware
Uh, yeah, no thank you.
Also, update regressions still happen. Even on Mint. Around the time you wrote this, one killed my sound. Just this past week, one killed my video. And I’m on an AMD integrated chip. AMD, you know, the one that supposedly now has open source drivers superior to the closed source ones for Linux. Then where did my screen go if support is so great? I had to reformat just to get into a usable state. No other option would work.
And then you have the whole diatribe about Linux is more customizable, and that you have more power over your PC and can control the whole system the way you want to. Again, on paper. Sure, because it’s open source, the ability and tools are there. But really, who is going to take the time to go to those lengths? I can go into God mode on Windows and fine tune way more aspects in the control panel than I ever could on Linux without having to get my hands dirty. And then there’s the issue of overall compatibility and usability. Define freedom of control. I got less value out of my machine on Linux than I did on Windows. To me, that doesn’t define control.
The Linux community has done a superb job of plastering on as much makeup and workarounds as can be mustered to make Linux FEEL and behave a little more standardized and usable. I’ll be the big meanie here if it’s to give a voice to Windows consumers who want better out of Linux if they’re going to convert. And by that, I mean I’ll come right out and say that all this progress over the last decade or so is largely smoke and mirrors. Linux will never be completely standardized and compatible, because that’s just not what Linux is meant to be. At it’s core, it’s not any different. At it’s core, it’s still Linux. And that’s not for everyone. Fan boys be damned.
Thanks for sharing your thoughts. I don’t feel as strongly as you do, but as my post makes clear, at least to some extent I agree with your sentiments.
Linux is “free” only if you value your time at $0. After two years of beating my head against Linux, I still spend more time every day fiddling with it than actually doing what I want to use the computer for. All of that is a complete waste of time.
Linux boosters who urge new users to try many distros and see which one they like are insane. The overwhelming majority of computer users have no interest in trying distros. They just want to use the computer. Period.
To drive a car, you don’t have to know anything about the internal combustion engine or how it works. All you need to do is start the car, put it in gear, and step on the gas. To be sure, some teenage boys enjoy taking the engine apart and putting it back together. Good for them. They are to cars what Linux users are to computers.
If you’re fascinated by the internal workings of computers and crave frustration, Linux is just the thing for you. Otherwise, fuggedaboutit.
But what about deployments of applications that you develop for customers? Would you choose Linux over Windows for deployment of .NET Core applications that aren’t client applications, but rather typically industrial control systems? I’ve always used Windows for that kind of thing too, but have been thinking of trying out Linux for deployment in order to lower costs.
Thanks for writing, Bent! I don’t deploy (or develop) .NET Core applications for customers (I’m mostly doing back-end work with ASP.NET Core), and I have never worked with industrial control systems, so unfortunately I am not in any way positioned to answer your question. This post is just about using Linux for home use, after all. :)
Yeah I’m there too, MacOS is starting to sound really good.
Samba, NFS, (I might try SSHFS before I go).
I get the feeling that people don’t actually test this stuff to see if it actually
works before they compile it and package it in a distro.
Over the (5 years?) I’ve been using Linux I have yet to get it to network share
any folder.
I’m going back to Windows this morning. It’s a sad feeling. I’ve given up again. On the bright side, I’ll be able to use all those programs that I collected during my software development degree; down side, Git in the command line will take a bit of tweaking.
Oh well. #deepSigh
Try the Linux subsystem for Windows. Great for simple terminal work. I sometimes use it for git (if I’m not just using Git for Windows, either through CMD or Git Bash).
If you’ve only used Debian based distributions like Ubuntu and Linux Mint, then maybe you’re problems originate with their architecture and not Linux itself? The kernel is rarely to blame (except for hardware and I/O). Ubuntu and Fedora used to annoy me with constant problems and issues here and there for years.
However, it sounds like you were facing the most common problem of them all: graphic card drivers still suck on Linux. There isn’t really anything users can do. Consumers have three options: NVIDIA (very poor support on Linux), Intel (fully open source but weak performance), and AMD (they’ve made significant headways in the last 10 months and seem like they’ll be the best option going forward). So right now and in the past there haven’t been any good options when it came to a Linux friendly graphics card.
I switched from Debian to Fedora last year and have never been happier as a Linux user. Fedora Workstation gets support from Red Hat and work tightly with upstream to deliver a great desktop experience.
Thanks for sharing your thoughts. Poor graphics drivers support is certainly a piece of the puzzle, though not the primary cause of my abandoning Linux. The main culprit is simply that I will always (in the foreseeable future) need Windows for certain important tasks (remote desktop, gaming, photo/video editing). Add to this the fact that much (though not all) open-source software is, for obvious reasons, subpar to commercial alternatives I already have on Windows, and the result is that my day-to-day experience is simply much better in Windows, even after almost a year of trying to get used to Linux alternatives. Graphics drivers support, or switching to other distros for that matter, can’t solve that.