130 comments

[ 3.5 ms ] story [ 198 ms ] thread

    Logs are your friend, and above all others is the syslog which
    is at /var/log/syslog. You can either view it with the less
    command, or you can tail it and watch it scroll by as new entries
    get added.
I had to check the timestamp of this article.

And I hope it continues to be true. But I will stay with BSDs.

Eh. The article doesn't really give good reasons to switch to Linux, aside from "freedom". I love the OS, use it on my servers, etc. etc. - but for my personal computer, I don't see a reason to switch away from OS X.
Smack on. Also Windows 10 seems to be getting some good Linux integration.
Many Linux people make the mistake of thinking that freedom is enough. It's not. People need a non-ideological reason to use software.
Freedom isn't ideological, it's very concrete. It just means you are allowed to tinker, share, and learn about the software on your computer.

And generalizations about what "people" need make the mistake of assuming that all people are the same which they're obviously not.

> It just means you are allowed to tinker, share, and learn about the software on your computer.

You say tinker, I read "everything broken for non-expert users that can't compile their own kernel modules".

Tinkering is fun when all the subsystems are working flawlessly and you're just fiddling with a couple variables.

Example: "to get a complex project to compile on Windows requires a lot of tinkering".

When I was 15, tinkering with kernel modules was the most fun I'd ever had, and the combined experiences of Linux configuration boosted my skills and intelligence.

Then thanks to the freedom to tinker I was able to get into open source software communities which gave me a career, new friends, and immeasurable amounts of learning.

That's why software freedom isn't a matter of abstract ideology to me.

I don't see how that is unique to Linux. Plenty of people, probably more, have had those same experiences with other operating systems. I can see why someone would like, or even prefer, to tinker with Linux and it would of course be a loss if it didn't exist, but that doesn't mean that Linux developers are the only ones tinkering. So it does seem like that it's primarily an ideological difference in what tinkering means.

Unfortunately the Linux community largely seem to attract and retain people who mainly care about their own freedom to tinker. Every time someone pushes out something broken, users lose thousands of tinkering man hours on trying to make those things work for themselves. As someone who likes to tinker, time is my most valuable commodity and Linux doesn't respect my time.

Do you see how it's a bit rude to insist that my personal appreciation of free software and open source is "ideological" when I just explained how it is actually based on my own concrete experience of being able to modify and share programs within the free software community?
You are free to tell me why you think I'm rude or respond to any of my argument and I'll be happy to answer, but please don't use this rhetoric were I'm supposed to either admit that I'm rude or come off as arrogant denying it.
I'm content just to let you know I think it's rude. Sorry I don't have time to explain exactly why right now.
(comment deleted)
(comment deleted)
The point is not whether you can tinker or not, the point is how much you can. And Linux allows you to tinker with stuff with which neither Windows nor OSX would ever let you play.
Yes and those arguments, that open source is a good or even the best way to tinker is to a large extent based on the ideology of open source. Someone who isn't convinced about the greatness of open source and/or might prefer other things like a large application ecosystem or other forms of tooling won't agree that this aspect of Linux is important.
If you read “everything broken for non-expert users that can't compile their own kernel modules”, how long has it been since you used Linux?

Your example is spot on. I once spent over an hour with a friend who wanted to test a multimedia application [1] on OS X and tried to help her installing it. In the end it turned out that installing the needed C compiler and SDL dependencies – a task that is only an “apt-get install” away on Debian – was a lot harder on OS X than we both had expected.

[1] IBNIZ: http://pelulamu.net/ibniz/

While I agree that Linux has become better in this regard, this is not a good example of it.

That you have problem running a cross platform application on a platform that has much larger ecosystem of users and experienced developers and that also have well established native alternatives is damaging the Linux ecosystem more than anything.

I do not understand, which cross-platform application are you referring to?
The funny thing about this is you could put 1996 on it and it would still be true word for word minus maybe HexChat. That's 20 years ago. Meanwhile, Apple cranked out a good, UNIX desktop and Microsoft eventually figured it out by Windows 7 (then lost it). FOSS just sucks at getting desktops done right for everyday user. They're always like an approximation of proprietary competition on the fundamental stuff people want. Some subset.
Linux needs to work out how to leverage the sophisticated UI goodness of modern browser renderers in its desktop.

That's when Linux desktops and desktop apps will start to look good and modern.

Also the only time I should ever see anything that looks like console output is when I run a console. Windows and OSX don't start loading with a "matrix like" blast of fast scrolling super technical load status messages, that sort of stuff says (with a megaphone) to users "GO AWAY, THIS USER EXPERIENCE IS NOT FOR YOU!".

On Ubuntu, you need to press a key to show the "fast scrolling super technical load status messages".

Also, it's not _super_ technical.

'normal' people absoultey panic when faced with a terminal window. People who do not know what the start menu is in windows cannot handle typing commands into a command line. This isn't an insult, I don't know how to change my oil or air filters. Everyone is not proficient at using a computer.
Downvoted because this was in no way a response to the OP.
Sure, but it isn't _super_ technical, it's technical.
When was the last time you tried desktop Linux?

I dual boot Ubuntu 15 and Windows 10 and I prefer the UI experience of Ubuntu. You just have to chuck a decent theme on (I use Arc) and icons (Numix) to get rid of the yucky defaults.

> You just have to chuck a decent theme on (I use Arc)

IMO that's half whats wrong with Linux...

https://www.google.com/search?num=20&q=ubuntu+how+install+th...

https://github.com/horst3180/arc-theme

A burnt user like me just sees a bunch of instructions that might fail - I much prefer the experience of starting a modern Android phone for the firs time...

Yeah that is a fair point. I had actually forgotten what a pain that was initially.

Nonetheless, if you can make it through setup the end results are quite attractive.

Sorry man, you are about 15 years too late. Everyone knows what Linux is and uses it pretty much all the time along with everything else.

The single best way I have found to switch to Linux as a desktop user is to dual boot my main home computer with Windows 7 or 10 and Ubuntu and then run Windows 10 PRO on my HTPC (that's "Home Theater PC" in 2009 parlance) so that I can RDP to it from Ubuntu to use Excel and Powershell and then also have two laptops: A macbook air and then also a Dell that dual boots both Windows 10 and Ubuntu 16.04. I would say that 9/10th of the time I just go ahead and use the macbook air. But booting into Ubuntu gives me that "party like it's 1999" feeling still, like I am really sticking it to the man, especially every time I sudo apt-get upgrade. Yes, I use ubuntu on all of my servers except the one's at work, which are all CentOS. Don't even get me started on my phone and tablet either.

Computers turned out to be just about the most schizophrenic world imaginable honestly. You have to know a ton of languages and Operating Systems and literally every company is trying their darnedest to lock you in. Welcome to the future. We are all polyglot. Wouldn't it have been awesome if ATT wouldn't have been such profit hungry assholes in the 80's and we could all be sitting here using UNIX and not having to learn tomorrows hot new language and don't forget google is launching FUCHSIA soon, which is a new OS that will replace Android, Linux, Java and... oh whatever. I should start learning Go I think. Node can suck it by the way, although I am sure some dick is sitting there in college writing a Node OS right now and it will end up powering smart cars and moonbases and microwave ovens and be worth a zillion dollars. I am not smart enough for this.

The only linux I use is Android. I've made half-hearted attempts to get into it before, but never enough to overcome the initial friction of confusion.

So no, not everyone uses linux all the time.

Come! Join us before it's too late ... :-)
Upvoted for being an amusing comment.
I used Linux on the desktop for years, until I switched to a Mac. It's not really the OS itself that would stop me going back, it's the quality of the applications and the user experience.

There's nothing I can do on a Mac that I can't do on Linux – except Apple ecosystem stuff like handoff – but it's generally more pleasant and polished with less faff, which has become more important to me as I've aged.

Yes, so much this.

The OS X app ecosystem is actually really good (from the user's experience at least). On Windows and Linux it seems to be sufficient to develop applications that functions correctly, but on OS X it's also essential to make them look and feel good.

When I last checked years ago Apple's human interface guidelines were excellent and described in minute detail elements, sizes, and layout principles that help with an application's design. I referred to them when looking at visually balancing preference menus for something completely unrelated and the advice stayed with me. Maintaining a design consistency across a platform helps greatly.
I believed the same thing until I try a tiling manager on Linux (i3). And today, Mac and Windows annoying. I have the feeling to lose my time each time I perform a simple task.

I also dream of a mobile OS as smooth and fast as i3. Android is anti-productive for me, and, as strange as this may sound, the mobile OS ergonomically closest to my i3 experience is Windows Phone.

It isn't even just tiling managers. As a user of a "traditional" floating window manager I find the Mac window manager painfully inadequate. There are some programs that will help but they don't make it nearly as pleasant to use as KDE, GNOME or any other DE I have tried on linux.
I made myself a set of shortcuts using Hammerspoon so that I could push windows to each of the 4 screen corners as 1/4 width, push to left half or right half of screen, or make full screen. This is really enough of the tiling WM experience (I had come from Xmonad) for the majority of situations.
Check out spectacle[0] for the same functionality. It can run in the background, so gives you a set of customizable shortcuts to move winds (e.g. half screen right, left, top, bottom among many others) while being purely invisible.

0: https://www.spectacleapp.com

I guess I don't use OSX the same way, but in Windows I really miss Alt-Win to move and resize windows that I use in Linux quite a bit. I tried plugins for Windows, but they just don't work reliably.
I went through a similar experience. The fact that I no longer have to dual-boot with windows to run some stuff is good, but the big thing is the amount of UI polish I get with Mac apps compared to linux equivalents.

I bet there's an untapped market for Linux releases for a lot of mac tools

I switched to Mac as well but it's not the applications that keep me from going back, it is the wifi and printer support. This is just so much better on a Mac than on Linux.
I hear this a lot, and I really don't understand it.

    # apt-get install network-manager network-manager-applet
    # systemctl enable network-manager
    # systemctl start network-manager
    $ # put "nm-applet &" into your ~/.xsession
And now you're done. I think most people would find Network-Manager's applet easier to use than if they had to configure a network in Windows 10.
It's not the UI, the problem is that driver support for Linux is not as good as for OSX.

OSX connects to wireless networks much faster, and also occasionally Linux won't connect to a network at all while OSX does. This might not be a problem when you just use your computer at home but if you are a consultant and you're at the customer's office, you just don't want to run into those connection problems which Linux occasionally gives.

I can give you a counter anecdote. At my university, I have the most stable wireless connection (eduroam) among my peers, using NetworkManager and a recent kernel. You just have to find a reasonably supported device - Thinkpad laptops, for example.
> It's not the UI, the problem is that driver support for Linux is not as good as for OSX.

Driver support for new hardware platforms or one where the hardware producer does not help enough might not be that good: I think Intel's Skylake platform might serve as a good example – an older Linux kernel had a bug where laptops would crash when the lid was closed; now that Skylake is older the bug has been fixed.

That being said, Linux has drivers for many more stuff out of the box than every other operating system. Of course, for the perfect out of the box experience, you have to choose matching hardware – same as with OS X actually.

Ironically, perhaps, when comparing current desktop Linux distros ("current" meaning "less than ten years old") to Windows, printing on Windows seems like an exquisite form of self-torture. CUPS (both on OS X and open source Unx systems) just puts Windows printing to shame.

As for Wifi, none of the devices I own have given me any problems. I've heard people curse NetworkManager, but it has always worked nicely for me, including VPN support. Maybe I just got lucky, but I have never run into any problems.

(My desktop is a MacMini, just to be clear, but all my other computers run various Linux distros or BSD; I mainly stick to OS X on my desktop because I need to access my Exchange mailbox at work, and on OS X it "just works", while on Linux/*BSD, it only sorta-kinda works - except, apparently, for CentOS 7 using GNOME 3 and Evolution. It's not like I am particularly unhappy with OS X, though.)

This is another problem with switching to linux. When somebody makes a perfectly cogent complaint that hundreds of other people have also experienced, the popular refrain among linux zealots is "It works for me. You must be doing it wrong." That must be nice for you, but that type of response makes the rest of us gladly run back to Windows. At least when we complain about bad windows features, we're not going to get gaslit.
That response is frustrating, but that's not a fair criticism. I feel like "You must be doing it wrong" is a hyperbolic simplification, too. This will happen in any community where you're getting voluntary support. Hell, when I'm supporting people at work I will sometimes start with, "Hmm, well, I'm not having a problem doing this." (and try to put that in a way that's not dismissive, but informative) Then I go and dig into and fix their problem. It is one of the first steps in troubleshooting. e.g. http://www.downforeveryoneorjustme.com/ If you're not paying for support that might be where your support ends. At least you have a clue that it's not completely broken.

"At least when we complain about bad windows features, we're not going to get gaslit." I feel equally frustrated troubleshooting Windows/Linux/OSX and third-party software. Most often I'll find someone with the same error, the first reply is something like "it's working for me, can you post a full log?", a full log is posted, and there was no further correspondence.

> This will happen in any community where you're getting voluntary support.

And that's another reason I won't go back to Linux from a Mac. I don't want voluntary support and to have to spend hours trawling forums to find fixes that don't work.

I want paid support where someone is accountable when things don't work like they're supposed to. Every hour I spend futzing with Alsa or PulseAudio or PPAs or dodgy WIFI and printer drivers is an hourI could have been earning money (I'm a freelancer).

That's what I meant when I said: "Polished has become more important to me as I've aged." When I was a student, I loved fiddling around with Linux. Now I'm a grown-up, I loathe wasting time. OS X lets me get on with things in a pleasant and consistent environment that works exactly as it's supposed to.

I do have Linux nostalgia, but when I've tried to go back, I just become frustrated.

> I don't want voluntary support and to have to spend hours trawling forums to find fixes that don't work.

To be fair, you get to do that with Windows problems, too. I work as a sysadmin at a Windows shop, and unless your company is willing to spring for an expensive support contract or pay a few hundred bucks per incident, Microsoft is not going to lift a finger to help with your problems and refer you to the technet forums instead (and lots of other software vendors do that, too).

I do agree with the "I'm too old for this crap" line, though - like I said, things pretty much have just worked for me over the last couple of years, and I do not miss the good old days of spending a weekend trying to get something trivial like a touchpad or audio to work. It was fun back then, but that was a long time ago.

> This will happen in any community where you're getting voluntary support.

Not only there - at work, part of my duties at work is being the local helpdesk monkey. When people call me and complain, say, that the Internet is slow, the first thing I do is call up some semi-random web page and see if/how fast it loads. When it loads fine, my first response, too, is "works for me", meaning the problem is on their side, not on our router or the Internet at large. It does not mean it is their personal fault in any way. It just means I have just narrowed down the problem somewhat. It is a first step on what often has been as fascinating (and often enough frustrating) journey.

Oh my, I should have finished reading your response. ;-) (When I am giving voluntary support, "works for me" does not, of course, mean "it's your fault and you're a moron", it means "I am not your personal helpdesk monkey - but if you're willing to do some more work narrowing down the problem, I am willing to continue helping you fix the problem!")

> "It works for me. You must be doing it wrong."

That is not what I meant at all. I am sorry if you got that impression.

What I meant to say is that I was rather lucky in that regard. While hardware support on popular Linux distros has improved massively since I first tried it, there is still a lot of hardware around where support on Linux sucks. If I tried some distro on my notebook and something like Wifi or suspend/resume did not work, that would be a dealbreaker for me, too, and I am too old to spend a weekend trying to get stuff like that to work. But like I said, I was very lucky in that regard (and I really mean lucky - it's been at least ten years since I had to spend any significant amount of time getting my hardware to work properly).

(comment deleted)
There is a lot you cannot do on a Mac, but that you can do on Linux. The point is that you do not see it until you have seen it elsewhere. How do you change the GUI theme on a Mac? How do you update all the software to the newest version? With a lot of GNU/Linux distributions, both is easy.

What users do not see, they usually do not miss. E.g. many users of OS X do not realize that some command line tools Apple ships are almost ten years old at this point until they find out that “[[” does not work in Bash on OS X or similar: https://github.com/sclorg/s2i-python-container/issues/104

I know they are example questions, and I get your point, but:

> How do you change the GUI theme on a Mac?

A lot of people don't really have a strong preference for these things.

> How do you update all the software to the newest version?

    brew upgrade
> some command line tools Apple ships are almost ten years old at this point

You can brew install the good ones with a oneliner: http://apple.stackexchange.com/questions/69223/how-to-replac...

But my overall point: I'm like your parent. I used to be a linux user, but I switched to a macbook 12 a little longer than a year ago and the pros far outweight the cons. And a lot of developers feel this way. You also get longer battery. And you can always spin up a vm for linux requirements.

I have tried a lot to use only linux. I was able to drop Windows completely (as I don't play videogames). But at least for the moment, macos is just much better for a lot of people.

Homebrew is a killer app for MacOS right now. I could switch back to Linux on the desktop (and spent quite a bit time investigating the possibility), but it could actually be harder to keep my Open Source tools up to date. Linuxbrew exists, but Homebrew is a proven and well-supported system.

The other key third-party app for me, oddly, turned out to be the Microsoft RDP client. I'm paid to manage servers, and unfortunately, some of those are Windows, so I need a totally reliable RDP client.

I also don't care about GUI theming, but I do care about readability, and MacOS on a machine with a Retina display delivers totally crisp font rendering. Linux is now constantly getting better, but I don't think that it could match MacOS yet, even on a machine with an equivalent display.

> How do you change the GUI theme on Mac?

You see, that's the problem: Mac is opinionated, and this is the quality we most often praise it for.

Changing the GUI is functionnaly useless for any job. That means some folks in the Linux GUI thingy thought it was good to make everything a variable, not even a build-time constant, write configuration screens, and poll the value each time you redraw the window in case someone changed it at runtime. For every change they also have to test them with a bunch of GUI themes and write automated tests for them. Plus the added benefit that every line of code is friction. I'd say they're spending their time on the wrong thing because...

In Mac, it's fixed. That means as a user I benefit from not spending time choosing a GUI theme. It also means apps can rely on constants. Makes it worth paying a UX designer to interview users and choose the right value™. And this right value will be better than any setting.

- Mouse: I remember fiddling with xinput a lot because the UI never allowed me to set the acceleration. On Mac I don't even need to know where that control is.

- GUI theme: Ubuntu has a default GUI theme that is wrong, because it has big fonts and big borders, makes it look like a toy and consumes half the real estate of my screen. Not great for work, so you have to change the GUI theme. Mac is just perfect on those two priorities.

I think I have written about this some time back. Care to read it and find out if it is related to your assessment? http://blog.dieweltistgarnichtso.net/using-mac-os-x-as-a-sel...

Changing the GUI has a function, btw. Just yesterday I wrote a custom stylesheet for Slack because its developers chose “the right values” for people who can see gray-on-grey “contrast” well (so, not me).

There is some time I spend procrastinating, but during my year with Ubuntu at work I was really annoyed by everyday things, enough to suspend my task and fix my configuration, so I wouldn't describe it as procrastination. I didn't fix things I could work with (e.g. when I switched on, I would execute some commands in the shell to fix the mouse...).

Anyway we can discuss for long, but in the end I believe if Linux OSes had the amount of money that Apple has to hire UX designers, marketers and devs who don't mind doing mundane bugfixing, at least one version on Linux would become perfect. It was supposed to be Ubuntu, but let's hope it's the next one.

When I fix something, I immediately send it upstream, did you do that? I just did it now after I fixed a bug, so that neither me nor anyone else has the problem in the future. Debian has a program called „reportbug“ which you invoke with the package or file name related to the bug, even if you do not have a solution.

I think a distribution like Debian should appeal to you for its focus on quality. New packages in Debian move first to the Unstable distribution and then after some time to the Testing distribution. Testing is “freezed” before a Stable release to weed out remaining bugs. [1]

Debian also has a tool called “apt-listbug” that warns you before installing a new version of a package that has a known bug and gives you an option to not update that package automatically for as long as that bug exists.

What Ubuntu does is just putting its own stuff on top of Debian Unstable (or Testing, when it does a Long Term Support release). They have next to no quality control. When I drew glyphs for Unifont, this meant that for half a year, Ubuntu had a half-finished Unifont it imported from Debian Testing at the wrong time. I got complaints as I told people to install Unifont to play my Unicode proof-of-concept roguelike [2].

The guy from the article I wrote eventually did use Debian. I think he fiddled around with Emacs for over a month until he arrived at his “perfect” setup (which is different for everyone, by the way).

[1] https://en.wikipedia.org/wiki/Debian

[2] http://news.dieweltistgarnichtso.net/notes/zoo-tycoon-roguel...

> How do you update all the software to the newest version?

Same way you do on Linux: MANUALLY. Unless you're running a rolling distribution like arch, most of the software you run is out of date. Sometimes you can find a PPA with the most recent stuff, but if you can't, you're compiling manually.

On linux, that comprises all software I run on the machine, command line and graphical. On OS X, it only affects stuff run through homebrew, which is a small fraction of apps that have no native OS X implementation. Not exactly a compelling argument to switch.

I wouldn't say the software update thing is any better on Linux than it is on OSX (I do love just typing "apt-get install vim"). In Linux I end up installing /a lot/ of things outside of apt/yum just like I install a lot of apps outside of Apple's App Store. There's actually a lot of pros/cons to each platform.
If you want Linux to be a primary end-user OS, it needs to stop trying to approximate the experiences of other OSes, and provide an experience the others don't. For some, this is the freedom (source, legal, configuration) that others don't provide. For nearly everyone else, this is "I want to be able to accomplish something. Make it possible, or where it's possible make it better."

The closest thing to this I've found is Ubuntu's Unity, which makes some specific desktop tasks more intuitive than on other OSes. That experience should be expanded!

I don't want a Linux environment to be just as good as my Mac. I want it to be better. I'd gladly switch, I'm not tied to much of the Apple ecosystem (other than iCloud Keychain, and I can reset all of those passwords). But my platform choice has always been driven by experience, and I'll choose the best experience I can find. So far, my experience with every Linux distro I've tried has been to approximate, not improve.

> If you want Linux to be a primary end-user OS, it needs to stop trying to approximate the experiences of other OSes, and provide an experience the others don't. For some, this is the freedom (source, legal, configuration) that others don't provide. For nearly everyone else, this is "I want to be able to accomplish something. Make it possible, or where it's possible make it better."

> The closest thing to this I've found is Ubuntu's Unity, which makes some specific desktop tasks more intuitive than on other OSes.

Seems weird to me: for me Unity just cloned the UI / UX of Mac (single menu, dock, alt-tab switcher).

I've always liked KDE which was more Windows-like but ahead of Windows in providing searchable app launcher (Start menu for Windows users) way before Windows did.

(My point is: if you don't like Ubuntu with Unity then remember on Linux you have lots of choices.)

> Seems weird to me: for me Unity just cloned the UI / UX of Mac (single menu, dock, alt-tab switcher).

Unity felt a lot more like Windows 7 to me. It has the Start menu vertically on the left side, just I kept mine in Windows. It has the same keyboard shortcuts for starting pinned programs, and the dash is just a better implementation of the Windows 7 start menu's search field. Then it adds its own twist, allowing you to search menus with alt. I loved it.

I suppose the fact that the menu is at the top is like OSX, but because programs close when all windows are closed, it doesn't annoy me like it does on macs.

I want to disagree with everything you just said. Linux needs to not do this at all.

There is no possible way for open source to compete effectively with the design and research resources of large companies. But there's also no need to: everyone has been screwing it up for years.

Linux just needs to be simple, stupid but work. And the kernel level is pretty good at this. My window manager (cinnamon) is very good at this. At some point we've actually solved UI on a flat screen, and we're just going around in circles trying to reinvent it poorly.

So I disagree - Linux needs 2 or 3 mimics of other window manager layouts, and we need standards to ensure everyone can code to all of those easily.

> If you want Linux to be a primary end-user OS, it needs to stop trying to approximate the experiences of other OSes, and provide an experience the others don't.

You say that as if they were mutually exclusive. Linux is not just one OS which has to do one thing. It's hundreds of OSs which all can do different things. If some of those want to solely offer an improved experience over other OSs, while others decide to completely diverge from any known concepts, that's no problem at all.

Also consider that there's only so many concepts which will work with a desktop OS. You can build something that's completely different, but chances are that you end up with Windows 8 or Android or a media-center or Eagle Mode [0] which are great in their own right, but not exactly what most people will expect on a desktop computer.

[0] http://eaglemode.sourceforge.net/index.html

I do not try to motivate people to 'switch to Linux' even though Ubuntu is the only OS I use (apart from ChromeOS on my Chromebook and Android on my phone).

In my experience of using Ubuntu full time in the workplace for a decade or so nobody has seen me fix their problems with Linux world tools and thought 'must give Linux a go'. Instead they stick with what they know, on their PCs or Apple boxes.

I have never been evangelical about Linux, however, what I do is fix people's problems. Some of these can be very basic, for instance, how do you merge a big long list of email addresses and remove the duplicates in a spreadsheet program? Well, that is doable but if the task is part of a bigger task then you just want to get that done instantly, i.e. before the spreadsheet program loads... In linux world you can just do a 'sort -u' after concatenating your files with '>>'. Easy if you have muscle memory for 'vi', not easy if you have to hunt around for menus and stuff with a mouse in one of those 'graphical user interfaces' people speak so highly of.

So you can do this stuff before people's eyes, explaining what you are doing and keeping focused on the bigger task at hand, e.g. sending out a newsletter in the above example. But does anyone want to do it 'programmer' instead of 'user' style after being shown how much quicker and accurate the 'programmer' way is? Nope!!!

With anything to do with images there is a similar problem. Time consuming 'artwork' tasks such as cropping lots of images and compressing them for the web can be done one of two ways. As a 'user' one can open Photoshop and spend all day moving a mouse around doing things very much by eye. Or you can just do it near instantly with a simple script on a 'linux' box. In terms of speed this is the difference between taking a steam boat across the Atlantic or just getting on a plane, hours and days of work are saved. But would a 'graphic designer' think to do it linux style? Even if they could do it with homebrew style things? Nope, never. Doing it 'programmer style' could free them up from boring tasks so they could spend more time doing whatever it is that they are notionally passionate about. But they do not want to know.

In fact, even to get a frontend developer to open up a terminal window is a bit of an ask. There are people that use 'grep' and there are people that use 'gui' for everything.

I am not convinced that linux ports to Apple or PC environments are any good. My colleague uses 'MAMP' and that ties you in to doing things the GUI way, e.g. typing 'mysql -u me -pWhatever database < latest.sql' will give 'command not found'. Yes but you could add wherever MAMP hides stuff to the path and blah, but it is half baked. The speed of the thing is slow too, even if the linux version is on a legacy PC and the MAMP stack is running on some £1500 brand new machine. Don't get me started on developing a simple web page (e.g. Wordpress) on a Windows PC, in my mind it is as bad for kludges as the Mac dev environment.

I also have problems knowing what is really that good about these OSX/Windows programs that are vital to have. I can't open a 'Visio' drawing on my linux box but there is only one guy in the office with licensed Visio anyway, so it is not as if anyone else can open those things. I don't believe there is an open source tool for everything, give me a proper CAD or 3D modelling tool over some 'Blender' effort any day. But most stuff, linux is far superior as far as a toolchain that works.

The most amusing one at the moment for me is printing. My linux box just prints fine to those HP printers in the office that nobody ever seems able to print to. So whenever someone wants something printed urgently, it is me who does it for them. 'Look no drivers'!!!

Despite these positives (linux to ...

The trouble with Linux most of the time is that it's a craftsman's OS - full of asumptions that you are proficient at fixing problems and knowing how everything works from the inside out. And if you don't and mess up a bit the problems can be much more severe. I've used Linux as a desktop on and off for years, back from the time before Ubuntu was a thing, and every time I start using it problems begin to crop up that need fixing, especially when there are updates involved.

For example my brand new 2016 Ubuntu system magically ran out of disk space after a weekend of being left running unattended. Funny enough it was some silly hardware driver issue that kept firing system errors and the log rotation dilligently zipped those enormous log files till there was no more space left. It turned out to be "normal" and the solution was to just disable the message with some arcane terminal commands. After a decade of trying to solve those kinds of problems I think I'm a bit tired. Sure you have issues with macOS and Windows as well, but they are generally more mild and hardly ever work stopping, even if you are using them for dev.

I can live without some new hardware bells and whistles that Apple keeps producing but I can't stand fixing basic OS problems anymore and I think that's the thing that Linux desktop should concentrate the most on - stability, or rather - how to be able to move forward in a stable manner. Despite myself I keep following the development of NixOS - maybe some day...

I don't see it that way, particularly after reading about how you were able to solve your hardware driver - disk space problem. You were able to use your favourite search engine to get a solution. It was solved.

Currently I have a problem with my frontend developer's Mac running MAMP. It takes several seconds for a page to load. It is some simple DNS error, it times out 'looking for itself' on the network. So we tried many things, disabling ipV6, changing the hosts file, re-installing the MAMP software, changing the ethernet connection, disabling the wifi - it goes on. We also realised we had a paid for product and asked for support - config files sent off, no resolution. We also got two people from the company IT dept. to try and resolve it, again to no avail.

If you are trying to develop a website where you want every page load to be less than three seconds then it is no good if it takes ten seconds to load a page from your local development box. So this was an important fix. Searching the internet for solutions was no joy, it was as if the answers were were kludges that sometimes worked for some people with no substance to why the fixed worked. There was no underlying knowledge, just 'hacks'. This happens a lot in closed source world.

I am okay with arcane terminal commands, they can be reproduced and understood if need be. I don't mind copying and pasting them in, semi-blindly. As per your example, things can be fixed that way. But, at the moment, I find myself frustrated by a paid for bit of 'pro' software on a top-end machine with a 'pro' operating system that has no documented way to fix it.

In my specific example my colleague is pleased that a website can be developed on the localhost. 10 second page load times are 'no problem'. However, the same repository on my basic linux box with half the RAM and lame i5 CPU hits the 3 second target load times with no problems. I feel that too many 'users' are happy with what they have - 'wow I can develop stuff locally!' - to not realise that the performance is poor compared to the 'developer' linux solution. They don't see the need to fix the performance problems, they do not imagine better is possible unless it is actively sold to them - 'new, faster computer!!!', 'enterprise version' etc. They are forever beholden to marketeers rather than a community.

I get your point but other OS have similar tools. OSX has the standard sort. Windows has a sort as well. Python on either will give you a easy way to script some automation.

You mentioned images and specifically cropping, Photoshop has had batch processing and actions for 20 years and it can crop/convert/etc folders of files. Actions can do incredible stuff, arguably much more that some imagemagick scripts. It's also had JavaScript scripting built in since CS1 (2006?) if you want to get really crazy including letting you build GUIs for artists if you make something truly useful.

If you can't see why people prefer Windows/OSX I think you probably just don't use the same apps. There are no true replacements for many professional apps on Windows/OSX especially in the image/video/music/audio fields. There are apps and they superficially look like they cover the same areas but in actual use they are way behind in features and usability.

I use all 3 OSes. Each has their advantages.

As someone who has taught people to crop or enhance or grayscale millions of images from the command line I think you probably do not understand where people are coming from.

There are no GUI people and command line people. There are people that know how to use the command line, which takes effort before it gives results, or you can use the GUI with instant gratification.

Most people follow the easy path, as they should. But for garyscaling the easier path is the command line and it is very easy to sell it when they face a problem like this.

If you understand this, you can make the learning transition easier and almost effortless.

People are not stupid, I have taught people using vim. They saw me doing it and thought I was crazy, I made them do it after a great Steve Jobs like reality distortion field and I converted them, now they only use vim.

"Trying to switch to Linux" - I've been on and off Linux desktops for 15 years. At one point the free C++ development setup was better there than on Windows. That ship sailed, Windows with Visual Studio community edition is too good not to use.

It's best to think of Linux as a professional utility. It runs my phone, my file server, my backups, but the only time I want to see it on desktop is when I need to do weird things with PDF:s - this is when bash and the libre pdf tools on Ubuntu provide the fastest solution usually.

Value wise - the computer is kinda useless unless used for value added work. What that value is, depends, but for me writing code and art is more valuable than tweaking with config files. The only times my Linux systems seem to work without inflicting heartburns to me is when it's been provided and configured by a commercial third party, running on hardware provided by the said third party.

So it seems to me for trouble free computing-as-a-utility experience one needs a complete system with commercial backing. This is anecdotal, of course.

If all you need is some quick command-line tools, Cygwin may be right for you (ask your doctor today!). You get POSIX abstractions around your Windows environment/filesystem/etc.

I use it every day at work. It's not perfect, but a surprisingly large amount of command-line stuff will run just fine, particularly Python/Perl/anything with its own package management.

VS Community Edition is really fantastic, though MS VC++ of course has its own slightly different, not-entirely-compliant take on the C++ standards.

"It's best to think of Linux as a professional utility." I guess it fits into that box. I use OSX as my desktop at home, but I would 100% go with some Linux before going back to Windows at home. I switched to a Windows job after using Linux for 10years--I really miss using Linux. At first I thought it was a familiarity thing and dove all into powershell and the like, but I the solutions for Windows seems awkward, slow, and clunky.

We're probably getting very different "value adds" from Windows vs Linux. I liked Visual Studios' debugger, but I mostly compile other's code (libraries) and write glue-code in things like Python or munge data via the command line. I abhor editors that take 5+ seconds to launch (vi generally loads in much less than 1 second) and using command line tools to compile means I can script and chain things together, or easily run them on a remote computer.

As for desktop use at home, I mostly use Internet, Word processor, spreadsheets, and tinker. OSX and google docs fits most of those use-cases.

"We're probably getting very different "value adds" from Windows vs Linux."

This. The spectrum of computer uses is so wide that the only obviously wrong statement is to claim a specific system will undoubtedly fit all users needs.

I am personally responsible for several small DLL C++ projects at work and have visual studio solutions open to them all of the time so start up time is not something I care about.

So, for me the OS mostly fades into the background. Grepping through filedirectories is essential for my work. Windows vanilla tools generally suck for this but one fixes that by using a third party exe - in this instance, AgentRansack.

I agree, I would much rather use bash and posix tools for the sort of problems that those are used than what is available on vanilla windows.

Personally, I think there are only 2 advantages (over something more polished like OS X):

i. Doomsday scenario: Competing platforms do something awful like direct spying on users, making it unaffordable/inaccessible or generally taking terrible, permanent decisions. Then, a free/open source OS will become The only feasible option. The counter point to this is, competition ensures very few companies will take that route.

ii. Learning & contributing: As a developer, I can understand and improve any part of the stack. Counter point: This doesn't address non-developers, who are a majority in today's world.

Regarding point 1 didn't MS take that route already with Windows 10?
I think yes. But I'm not sure if non-technical people understand the implications. They'll probably take it more seriously if Windows-collecting-data has a direct impact on their lives. For example, if their browsing history gets posted on their social networks, or something like that.
There's one point where it already affects non-technical users: HIPAA-compliance or any form of legal agreement to not disclose information.

It's currently not clear whether it's legal to even run Windows 10 Home/Pro, if you have such obligations, as even the best privacy that Microsoft allows, is still sending something to Microsoft and no one knows what it's sending.

This becomes even more fun when you consider that in order to be HIPAA-compliant, you have to always keep your software up-to-date. That means you have to upgrade from Windows 7/8 to Windows 10 and therefore can't just stick to a previous version to be legally safe.

For bigger health-care institutes, Windows 10 Enterprise might be an option here in order to not risk a lawsuit, but for a simple doctor who'd only need one or two licenses, that's not a viable option either. Maybe we'll see an organization of doctors for buying Windows 10 Enterprise License Volumes together and then sharing the licenses, but if not, they would all have to migrate to OSX or Linux.

I can sacrifice user experience for performance but there is no excuse to that in 21 century countless of people are experiencing countless of package and dependency crap errors.

It became a philosophy of linux that when you are trying to solve use case problem - you need to engage into lengthy scavenger hunt for fragmented bits and pieces of information and solutions to stich something together that hopefully works.

It's been ..? 30 years? Like that.

RTFM is not an answer to millions of WTF?'s

> there is no excuse to that in 21 century countless of people are experiencing countless of package and dependency crap errors.

Are you arguing that homebrew is better than apt-get/pacman/etc?

Not to mention the situation with Windows' installers and their standard tactic of spraying my system with DLLs and untrackable registry writes.

Homebrew is better in one obvious way: You can't break your system and the packages are usually up to date. With pacman you do one wrong step and your system fails to boot.
When I was forced to use OS X (for about 2 years), my homebrew stopped working (just partially wiped out and required 'doctor' or whatever) twice due to major OS updates. Not exactly breaking the system, but breaking all the tools I cared about. It also randomly broke on other occasions. Not being a first-class citizen on the OS does matter.

Been using Xubuntu 14.04 + i3 (and recently, Qubes OS) full time for 3 years now. Never faced a problem with apt, and I have a sane wm instead of the "drag this window out of the way to see the other window" hell (and not having to use my mouse is an added bonus). I loathe booting into a different OS.

There are certainly ways to emulate the Linux experience on OS X. But increasingly I found that OS X wasn't delivering any value in itself (I mostly stuck to iTerm + browser), and the less-than-perfect emulation of the Linux environment became infuriating.

Using Arch as a comparison for ease-of-use probably isn't terribly indicative of Linux distros generally. It's "bleeding edge".

My experience is as a person who mostly writes software for Linux and admins Linux systems. OS X is just an unambiguous productivity drop for me, but I can appreciate that it is probably not the case for casual use.

I'm really interested in the possibilities that are opened up by package managers such as Nix and Guix. Atomic upgrades/rollbacks, side by side installation of libraries and apps, multi-user support...

It's just a shame that the maintainers of Nix think that labelling it as "The Purely Functional Package Manager" is the best way to sell it. Same goes for Guix, "The Emacs of Distros" - they say that like it's a good thing.

They're not trying to sell it. They're hackers who use it for their own purposes and are probably more interested in attracting other hackers who can help out than they are interested in pretending to be a consumer OS or actually being one with all the support and polish and work that entails. Maybe later someone will make the Ubuntu of Nix.

The Emacs of distros sounds exactly what I'd want by the way. What's wrong with that?

Fair call, they are hackers who use it for their own purposes. I'd just love to see more open source hackers start with the mindset of advancing user experience from the very outset.
If I could run the apps I need, I'd use it in a heartbeat. However I'm an audio and video producer / editor, and Linux A/V editors are not professional-strength.

This issue right there is what has kept me out of Linux for more than ten years. If I have to run Windows or Mac anyway, then the additional overhead of a second OS just doesn't add any real value - instead it's another maintenance point and learning curve.

That's one of the worst sales pitches I've ever read. "Linux - Embrace the Pain".

I do run Linux on the desktop. I also have a Windows 7 desktop machine for stuff that won't run on Linux, but it's usually off. I have some Linux subnotebooks. And I still think Linux on the desktop kind of sucks.

Linux always has GUI bugs that never gets fixed. The Ubuntu dashboard randomly stops finding applications. The cursor disappears after suspend/resume. Both of those have had open bug reports for years. This is considered part of the Linux experience. Microsoft and Apple usually fix that stuff, so they don't get criticized in the press.

With enough code bloat, all bugs are deep.

That cursor bug has bothered me on Xubuntu 16.04. I didn't realize how old it was. Is there a workaround besides "awkwardly save your work and restart using the keyboard and an invisible cursor"? (Please nobody say "stop using a mouse"; just try editing graphics without one.)
(comment deleted)
Yes.

CTL-ALT-F1

CTL-ALT-F7

This takes you from the graphics environment to a full screen text console and back, which re-initializes the graphics environment. It doesn't affect your running applications.

First reported in 2012.[1] Search for "cursor disappears ubuntu" for the long and broad history of this bug. I see there's been progress on the bug report.[2] Unfortunately, fixing it seems to have broken some other things. But after years of complaints and confusion, effort is being put in on it.

Visualize having to explain this to a CFO whom you're trying to convince to use Linux.

[1] http://askubuntu.com/questions/118001/how-to-restart-only-mi... [2] https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video...

I've found this approach -- to console and back -- useful for clearing other things, e.g. a custom pointer image in Firefox "sticking" upon some combinations viewing/activity.
Just today I had Win10 lock up on a brand new surface. None of the inputs did anything, though the screen remained on and the time changed, etc.

Only holding the power button unreasonably long did anything, and that wasn't anything good.

> (Please nobody say "stop using a mouse"; just try editing graphics without one.)

Actually I had lots of success editing graphics from command line with ImageMagick. Granted there are lots of things that you need a mouse to do but I was surprised how far I could go with just the command line.

A while ago I moved to Arch Linux and started using the i3, a tiling window manager. This is an unusual setup, and not one everybody likes.

I was surprised at how many GUI bugs there were in the stacks of the mainstream OS's when I had to work on some in the last few weeks.

If you are competent I recommend moving away from xubuntu, or at least its defaults. Take note of the programs you like and install them on the new system, or note the ones you don't and replace them. Swapping wm's is pretty common.

A tiling wm is not for everyone, and my job doesn't involve much mouse work, however when I have had to use GIMP and Inkscape they have worked pretty much perfectly in their fullscreen beauty.

But yeah. Not for everybody.

A coworker mentioned the cursor bug yesterday; I have never encountered it, but he uses Ubuntu and I use Debian. If you have no need for Ubuntu-specific software, I would suggest to just install Debian Testing, as it is more up-to-date than Ubuntu and does not have this bug.
I wish that Ubuntu wasn't the default desktop Linux - they have a development process that means that they don't necessarily ship stable software, they use their own graphical interface stack that nobody else works on, and they don't have the resources to deliver on any of their ambitions.

Ubuntu Server is quite good, since it's mostly a polished-up Debian, but Ubuntu Desktop is probably always going to be almost good, and no better.

I stopped using Ubuntu when it went off in that weird direction with the UI.

My HP Stream 11 runs Mint XFCE and we put Mint Cinnamon on the laptop my wife uses. Both these just kind of get out of the way and are mostly unnoticeable, which is mostly what I want from an OS as a user.

Isn't Mint still basically Ubuntu, but with their own release cycle that's even further abstracted from the Debian one?
True. I could just use XFCE or Cinnamon on top of Ubuntu. But I have to admit 'Linux Mint Cinnamon' sounds cool. Probably a dumb reason but at least I'm honest!
I stopped using Ubuntu years ago because of their development process making upgrades more complicated than necessary. When I do recommend an operating system to someone nowadays, I usually go for Debian Testing or Debian Stable.
I absolutely agree, but just to provide a counterpoint - Windows(literally all editions, from 2000 all the way to 10) has a bug, where sometimes when you right click on something and click one of the options (say "paste") that button will stay on screen, no matter what you do. The only fix is to either change your resolution temporarily or restart. MS knew about this for years, probably more than a decade now, but says the bug is somewhere in the kernel and can't fix it.

http://superuser.com/questions/57016/menu-select-item-stuck-...

This is why some people go for more manual and minimal distros and desktops ... fewer bugs.

I use mostly Arch Linux, with the core components of the Mate desktop environment. But I've used Ubuntu a lot in the past (and even a bit currently). Even though it often rolled out newer major versions of packages sooner, Arch always seemed to be less buggy than Ubuntu, because it didn't try to make everything "just work" by auto-configuring stuff or applying integration patches etc. You might not want to do the rather manual Arch install/setup/configuration thing, but if you do go through it, you're rewarded with a less bloated and less buggy system, and a better understanding of what all the parts are.

> Linux always has GUI bugs that never gets fixed. The Ubuntu dashboard randomly stops finding applications. The cursor disappears after suspend/resume. Both of those have had open bug reports for years. This is considered part of the Linux experience.

Maybe some would consider stuff like this a part of the Ubuntu experience, but I have encountered neither bug on Debian using XFCE, GNOME or i3. You should know that Ubuntu has a different desktop from most other Linux distributions and that Ubuntu is not representative of the whole – in a similar way that any GUI bug in Android is irrelevant for most other Linux distributions.

I used Windows exclusively from DOS until XP. Then for over 10 years I was using OSX and Linux exclusively. With a recent job change I'm now managing Windows 7-10 and I'm amazed how many clunky things are still there.

I built a new PC in January and installed Win10 from a USB stick--no driver for onboard ethernet. I had to find another computer, find the driver, put it in a USB (no CDROM), and manually install it so I could connect to the Internet to install the other drivers and updates. Yes, it was a new motherboard and likely the fault of the manufacturer, but it was just 10/100 ethernet.

This week I was prepping a brand new system with an in-house developed game for a trade show. Fresh install of Windows 10, installed all updates, video card driver, copy the UE4-based binary. I get some DLL errors on launch. After googling and ignoring many offers to download that specific DLL I find out it's a DirectX DLL and I should just re-install DirectX. DirectX is no longer separate in Windows 10, so everything should be included. After more digging I find there was an optional DirectX update in 2010 and installing that fixes things. It had a suspiciously different install method; launching it asks to uncompress files to a folder, then you have to dig into the folder and run the setup.exe in there. I also see/hear Steam manages different DirectX (and .net runtimes?) when installing games. Windows + DirectX is a huge focus for Microsoft.

Windows still freezes the whole window when the application is busy. You can't resize or minimize it. I don't remember this being an issue in Linux or OSX in the past few years.

I was amazed had how many updates you need to install on a fresh install--and how many times you need to reboot. I heard they started doing rolling service packs to address this--but they're only now starting to do something?

There are so many little grievances still in Windows after not using it for 10 years I wanted to compile a list for a blog post--I was just so amazed how much housekeeping hadn't been done.

Desktop Linux is great but I don't expect anyone who's uncomfortable with a terminal to use it.

For someone like myself who is fine with a slightly more technical desktop experience, using Linux gives me a setup I can shape to fit my requirements and then never have to think about ever again. It's very relaxing compared to using Windows because I don't have to deal with all the little annoyances e.g: Constantly forcing me to install updates; big UI changes between versions; vast quantities of bloatware.

However for the people who are strictly averse to the technical aspects of Linux (most people), I would never bother trying get them to switch. It's a pointless uphill battle which ends in frustration.

(comment deleted)
Absolutely false. Desktop Linux is all except great. As they already highlighted in this thread there are plenty of annoyances and it is on the whole a subpar experience compared to Windows and Mac OS X. In windows and Mac you can use the same terminal if you want, but you are not forced to use it. There is no way for me to switch to Linux, Mac OS X gives me exactly the experience that I want, without headache. I don't care if people don't use Mac OS X and so I'm pretty annoyed when there are people that try to push others to switch to Linux, like in this article. Enjoy your Linux, but please don't write untrue absolutes like "Desktop Linux is great".
In what way was I pushing others to switch to Linux? I literally said I do not bother trying to make others switch.

I simply gave the reasons I prefer desktop Linux to Windows and yes I believe desktop Linux is "great". In my experience it is certainly not "subpar" compared to Windows, hence why I use it.

Where did I say that you were pushing others to switch to Linux? I clearly said that the article was doing that. You instead stated an absolute truth that Desktop Linux is great, that is simply untrue by all means.
Well, fair enough then. I plead guilty as charged. Linux is definitely not great.
It's not untrue. It just depends on what you want and like. My laptop Linux setup is exactly how I want it to be and it's indeed great. If you don't like it, that doesn't affect me at all.
A great desktop operating system works just out of the box without any ridiculous quirk and doesn't force the user to spend time to find a solution. I might call it broken, but for sure not great.
Well, it would be nice if there was an operating system that worked as I wanted it to out of the box. But there's no such thing, so I'm okay with "great after initial configuration". My Linux setup, for me, is much greater than any other I've ever used.
> please don't write untrue absolutes like "Desktop Linux is great".

> [Linux] is on the whole a subpar experience compared to Windows and Mac OS X.

Well done.

I would use Linux on servers hands down. There is no doubt about it period. But I would not put myself in the torcher of using it on Desktop/Laptop. The UI is buggy and applications crash frequently. No matter how good google docs or any other online doc tools are, I would need Microsoft office to run smoothly on my desktop & laptop. For development environment, MacOS would be my first choice.
The article is less than convincing. The most convincing reason for me to switch to Linux was being poor in college/grad school.

The options were using Windows Vista (and, later, Windows 8) on a cheap laptop or using Ubuntu on that cheap laptop after removing Windows Vista. An Apple laptop wasn't possible.

After that, I just stuck with using flavors of Ubuntu on laptops (even after buying a Macbook). Maybe the author should've pushed more "free" (as in, not $1000+) and less "freedom."

> And I’m here to tell you something: You’re not alone! There is help out there. There’s a huge community of people with the highest intentions, dedicated to freedom and Open Source software, available to help you. You just have to reach out to them. Find them. Connect with them.

A sizeable number of those people are fucking arseholes and you really shouldn't be pointing confused users towards them. At least you need to provide some training to those users about how to ask questions to reduce the risk of getting bitten. (This isn't unique to Linux.)

if u only use email web and browser, or is an expert linux is great. Its bad for the intermediate user.
And billions of tax money going to apple and M, witch could be saved.
TL;DR - people want to get things done, so support them in doing that while waving your freedom flag, instead of being stuck in the past and appearing primitive. Also, support FLOSS (free/libre open source software) at least monetarily, if not with time and effort.

~~~~~

This article didn't really motivate me to try to switch to Linux. In my reading, it was just a bit of fluff about looking at /var/log/syslog and searching for 'proper and relevant' error messages. That's definitely not enough for a non-tech-savvy common person.

There was a time when I used to think that software will improve in stability and quality over time, but I've realized that things are so complex, so diverse and driven by so many people that we've actually gone far away from "it just works" on _every_ _single_ _platform_ (this is about common people, not tech savvy people who can edit config files, look at system logs, debug applications, fix bugs, build from source, etc.). It doesn't matter if you like Windows more or OS X (macOS) more or Linux more - none of them are really great enough for common people to use without being annoyed or downright disrupted in accomplishing what they want to. It's only an ever changing ranking of who's doing worse at any point in time.

Coming to Linux, I find the following as deficiencies in the distributions and the applications that prevent people from adopting it on their computers more (this list is a generalization across most distributions, and I know some distributions may be vastly better than others):

1. Hardware drivers (video and network being important ones that people rely on) - this has improved tremendously in the last decade or so, but it still is kind of a coin toss when it comes to saying "ok, I have this laptop and I'm going to install Linux on it" and being confident that it would work.

2. Not including proprietary codecs and stuff that people actually want. Nobody wants to hunt down a codec pack or spend a lot of time just to watch a video they've downloaded. I'm not belittling the fight for free software and freedom, but we have to accept what people are tending toward even if we know they're probably on a destructive or unproductive path.

3. The UI - this is a huge deal, really. Most Linux distributions and applications still use some really ugly fonts and ugly looking GUI elements. It's as if we're still stuck in 1995 admiring Windows '95 as the best thing that's happened to GUIs. I see a similar issue with LibreOffice (which I use), where the UI is primitive looking and difficult to use (especially for those who come from using MS Office - standard menus or ribbon interface doesn't matter). Most people around the world who now own computers are starting to have nicer screens (at least closer to HD or HD). Things start looking even more uglier on those systems.

4. If you want 2016 to be "the year of desktop Linux" [1], you have to start by admitting that this cause was lost long ago and adapt to the better presentation, practices and behaviors seen in other OSes, however primitive, deficient or restrictive those may look to you from different perspectives. Copying ideas, polish and UI paradigms is not a bad thing because most people want to get their work done and not have to learn something new as a stepping stone to getting things done (recall the Windows 8.0 fiasco over the Start button not being there and people not knowing how to shutdown their systems?). There has been a lot of progress here as well over the years on the Linux side, but the polish is definitely not there (in a comparative sense) or comes at cost (not monetarily) that end users don't want to deal with.

5. The update coin toss - this is becoming quite common and a well noticed problem on Windows and OS X as well, but you never know what an update will do to your system and if you'd even be able to boot it up (this could be related to drivers too, but ...

(comment deleted)
Wow. Is the author really telling me my mom should hunt down errors in log files, search for them in bug trackers and provide "vital feedback to developers"? And she receives back some "freedom"? Then he is completely missing the point for the "normal" user and what he said just boils down to: "Don't try this at home if you're just a desktop user."
I use Ubuntu everyday and I don't remember a moment where I had to read /var/log/syslog to fix anything.