Hacker News new | ask | show | jobs
by bane 4319 days ago
No, it's much more complicated on Linux.

Very few normal user "I don't know how to do this" problems on Windows or OS X require sys admin level skills. These days most things you want to do either just work, or are discoverable just by poking around in menus and trying a few things. When something doesn't just work in Windows or OS X there's usually a GUI somewhere that solves it.

As soon as you hit a problem in Linux, it almost inevitably requires you to fire up a terminal and start editing config files, dealing with permissions, building from source. And half the time if you screw it up, you're left with an unusable system.

If you don't believe me, pick a distro, and start reading through the help forums for that distro, questions that involve normal user type problems like "I don't know how to share this folder on my network" or "audio doesn't work". As soon as a user has to open a terminal to do something, they've become a system admin.

For example, here's the instructions for backing up and restoring a hard drive (Keep in mind, this is 2014) http://ubuntuforums.org/showthread.php?t=2234758

Again, in 2014, here's the "fix" to keep your windows on the correct monitors. https://www.youtube.com/watch?v=LwJl3ohmmqc&feature=youtu.be

Or, "I can't browse a windows share on my home network" http://ubuntuforums.org/showthread.php?t=1169149

Here's the instructions for "getting a list of software that's installed on my computer" http://ubuntuforums.org/showthread.php?t=261366

How to install a scanner http://ubuntuforums.org/showthread.php?t=2166420

A fun drinking game you can play with Linux tutorials intended to solve normal user-level issues:

- count the steps until a terminal is open, drink that number of shots.

- for every sudo command, drink a shot

- every time a file has to be edited or redirected, drink a shot, pipes are two shots

- every time a permission has to be changed, drink a shot

- if the user has to run a script, drink a shot

- if the user has to apt-get (or equivalent) something that has a completely non-discoverable name that you just have to "know", drink two shots. If it's an apt-get for something with a guessable name, 1 shot.

- if the user has to concern themselves with overwriting files or making backups of something, drink a shot

- if the user has to compile something, drink a shot

- every time the user has to 'ps' or 'kill' a process, drink a shot

- if the problem is the result of the distro updating a library, drink two shots

- if the problem is the result of an arbitrary compatibility issue with something that has an incompehensible name (like pcmanfm), drink a shot, if the problem is because of a minor version difference, drink two shots

- if it's a problem that only exists on Linux because the rest of the world is ignoring it (like access to streaming media sites), drink 2 shots, if the solutions are complex and require multiple shots to get through (see all of the above), then don't work, drink 2 more shots

- for every page of follow up in the forum that's proposing the solution, drink a shot.

Here's an example of a simple game. An answer to the question of "how do I watch netflix in Ubuntu"

> why don't you just inst all netflix

> To install on Ubuntu / Mint -

> Start terminal 1 shot

> $ sudo apt-add-repository ppa:ehoover/compholio 1 shot for sudo, 2 shots for nondiscoverability

> $ sudo apt-get update 1 shot for sudo

> $ sudo apt-get install netflix-desktop 1 shot for sudo 1 shot for apt-get

> and then find the NetFlix Icon under Video click to install and you are done. no shots, but why couldn't this just be done via a gui?

Total Damage: 7 shots of hard liquor. Congratulations, installing netflix has just made you an alcoholic.

Here's a 33 page discussion on installing the ePSXe playstation emulator. http://ubuntuforums.org/showthread.php?t=612021 Congratulations you've now died of alcohol poisoning.

The Windows version of this is

1) download the install file 2) unzip it 3) run the epsxe.exe file

1 comments

As soon as a user has to open a terminal to do something, they've become a system admin.

As soon as a user has to open a Windows management console, they've become a system admin, too. Device Manager? That's sysadmin. You seem to have missed my point about 'preconceived notion of what an operating system looks like'.

Half the stuff you're complaining about is equally stupid in windows. Have to download a tool from some slightly dodgy site to fix your problem? Two shots. Windows config file edited? A shot. Install a .reg file? have another shot. Run something in an cmd window that's been raised to Administrator (not easily discoverable)? have a shot. Have to kill something in Task Manager? Another shot. Ignore the log, "just reboot to clear the error"? Another shot. Random new icon on your desktop from your mystery tool? Another shot. A brand new phone-home tool-specific updater and possible spyware? Two shots. Windows auto-update does an autoreboot overnight and kills open documents? Have another shot. Never suggesting looking in the logs for an insight to the error? Another shot. If the installer is actually a preloader, and it loads an unknown-size payload? Have a shot. Download "mouse drivers" or "network drivers" from your motherboard provider and they're somehow bigger than 100MB? (even bigger than 1MB?) Have a shot. The tool you're looking for is described on a shitty page full of ads for crapware? A shot. The tool you're installing has a drive-by download of some shitty toolbar, with a pre-checked tickbox? Have another shot (hello Adobe Flash!). You need some special media library just to view support resources from your vendor? Take a shot (hello, Silverlight!).

What about the glorious nature of the AMD GPU Catalyst drivers? On a new Windows install using inbuilt drivers, the display is understandable low res, 640x480. You can open the Catalyst drivers to start setting them up, but you can't see the OK/Apply button, and you can't move the top of the window off the screen, because it's taller than 480 pixels. If you don't know how that screen should work, it's just not discoverable. It's been a problem for years.

You're picking and choosing pretty damn hard there, my friend. OSX has largely solved a lot of these problems (mostly by locking things down hard, particularly on the hardware side of things), but Windows sure hasn't.

Except almost none of the things you've described are things that normal users have to do to solve normal user problems. For example, nobody edits windows config files anymore, that hasn't existed as a Windows thing for a long time. And I can't even remember the last time I had to mess with a .reg file. Maybe 8 years ago? And it wasn't required, I was fooling around with something, or trying to hack around a broken software key or something. Most of the things you've listed are sys admin tasks, but they aren't normal user tasks. Normal users don't even know what a log file is. Why would you list something like that?

And that's the point, the things you point out might be things that at some point somebody might optionally need to do to solve some obscure, once in a lifetime problem.

But on Linux systems, that's pretty much all you do. Pretty much anytime you need to do anything, you're in terminal, fucking around with permissions or sudoing or editing some unguessable .conf file somewhere or restarting a daemon. None of the examples I gave were for sysadmin activities. There are no servers that need to be monitored, no hardware performance that needs to be profiled, no network things that need to be configured and securely locked down. I gave you 61 page discussion on how to browse a network share, something that's been trivially solved in everything from OS X to my Smartphone for years -- and up to the last page people are saying that the suggestions in the how-to don't work. The collective wisdom of the crowds spent 61 pages of fixes, conf file tweaks, scripts and discussion to not be able to produce a universally working answer. This isn't an unusual "something broke and I can't access my network shares" this is the introduction how-to set it up!

That's absurd!

Or how about the 33 page discussion on how to install a piece of user-facing software? 33 pages! And it doesn't work universally for everybody. These are people who are all on the same distro! You have to be kidding me. That's completely, 100% unsatisfactory for something that's being put in front of users. The install instructions for any user-facing software should be at best a 5 line, GUI driven exercise for n00bs followed by a half dozen "thanks it worked!" posts.

I'm not trying to cherry pick here. I simply went through the ubuntu forums and picked the top-n items that looked like things a normal user would want to do. I didn't pick "Howto setup a Juniper Network Connect VPN" or "How to identify PCI Driver in use" or "Practical examples of the linux Find command" or "how to setup a secure ftp server" because that's not things users want to do.

It's not lack of familiarity. Even seasoned, decades long Linux users have to consult and decode poorly written man pages and decipher unguessable commandline options, spend hours hunting through forums to see if somebody happened to post a solution that works for the minor revision of whatever distro and software version of whatever thing it is they want to try to fix. You can't work your way through and "discover" how to do that stuff. Nobody's going to sit down to solve their monitor layout problem and just by poking through a few menus arrive at something like this 9 minute solution https://www.youtube.com/watch?v=LwJl3ohmmqc&feature=youtu.be

You can get comfortable with apt-get or yum or whatever all you want. But if the one critical component you need to do some typical user-level task is entirely undiscoverable (so apt-get is useless), and configuring it requires 60+ pages of solution guesses, the OS has failed.

It's madness. And it's why you'll never see a city or state-wide Linux initiative work. Linux is a sysadmin OS, not a user OS. The moment a user needs to do something, they simply can't be doing this shit. Sysadmins don't mind spending two or three days figuring out the script to make the service daemons shutdown in the right order. Users don't give a shit.

Linux users don't become comfortable with their systems in the way Windows or OS X users do. They become comfortable with the brokenness of the system. Their expectations are light years apart. On Linux you become comfortable with the fact that, even if something isn't broken, any trivial task you want to do is going to require you to set the better part of a couple days aside to resolve.

For sysadmins, that's their job. For users, it isn't, and that's why these initiatives fail.