The 2024 Wheel Reinvention Jam just concluded. See the results.

Why People Use Windows


Here's what I had to do to get up and running (at a functioning desktop environment) in ElementaryOS (one of the "nicest" Linux distros)
  1. Create a "live USB" of elementary OS
  2. Resize my main windows partition to make room for the elementaryOS partition
  3. Boot into the live USB (by rebooting Windows in a special way to get it to use the USB instead of going directly into Windows)
  4. Run the elementaryOS installer (actually pretty nice, except the part where the "third party" components won't install unless I disable SecureBoot, which despite criticism by non-windows vendors has actual security benefits that make it a lot harder to pwn machines left lying around)
  5. Go into my laptop's UEFI firmware menu (by rebooting Windows in a special way) and add the elementaryOS bootloader key to the list of approved secure keys, and enable the F12 boot menu so I can actually boot into it
  6. Frantically mash F12 to get the boot device menu
  7. Once finally booted into elementaryOS, realize my wifi chip is not supported by the current stable release
  8. Repeat almost all of the above with Beta 2 of elementaryOS Loki
  9. Finally be at a functioning desktop environment with wifi
(Omitted here is the last hour I spent trying to install software updates at the prompting of the built-in application manager, which somehow managed to uninstall the file manager and fail to reinstall it because the library it depends on is version 0.4.0.1+r980+idfk~ubuntu instead of 0.4.0.1+r980+idfk~daily~ubuntu, and nothing I can do will convince it that the daily version is => the version it wants.)

Here's what I had to do get the same in windows:
  1. Take my laptop out of the box
  2. Turn it on

And I haven't even tried running something in elementaryOS which needed to use the nvidia card instead of the intel one.

Not that I'm saying windows is perfect -- both graphics drivers are crashing on moderately difficult rendering work (intel on m64py, and nvidia on Elder Scrolls: Online) and the entire thing is sluggish as all hell for some unknown reason, possibly to do with being on a HDD (I've been booting windows on SSDs for several years now, maybe I just got used to it??). But it's so much easier to set up and requires so much less maintenance.

This has been a great rant but so what. What can we do?

I don't know. I really don't. There is so much infrastructure built up to streamline Windows usage and such a scattered effort to make Linux more usable, it seems insurmountable. I'm curious about the thoughts of people here. Does anyone have any ideas about how to make it better? Is Linux even salvageable? Could OEMs ever be convinced to ship a non-windows OS?
I should make a list of what i had to do to install Arch in a VM earlier this week. It was HELL
Here's what I did to get Ubuntu running on my System76 laptop (Galago UltraPro):
1. Take my laptop out of the box
2. Turn it on

To make Windows run there, I pretty much needed same 9 points (more or less) as you did to run Linux on your laptop + find Windows drivers somewhere on the net.

So what's the big deal?

Edited by Mārtiņš Možeiko on
Linux isn't difficult once you know how to make it work.

Windows has given me a lot of hell, whereas Linux is far nicer for me to use. Arch is much nicer than Ubuntu, even though it has a slightly bigger learning curve.

Also, installing Arch is actually extremely easy once you have the knowledge. The only issue then becomes what initial packages you want to install. I just keep a list from my previous installations, and now, my installations are always automated by a script I made for myself.
As mmozeiko points out, the comparison does seem a little unfair in that you're comparing a pre-installed Windows setup with a home installed dual boot Windows/Linux setup.

From a practical standpoint though, you may well be right. For most people (not buying their computers from specialist stores like System 76), the choice is to either use what is already there (Windows) or go through the kind of steps you described, and that's got to be massively off-putting. Which is a shame really, because there is a lot to like about the Linux ecosystem.
ChronalDragon

Here's what I had to do to get up and running (at a functioning desktop environment) in ElementaryOS (one of the "nicest" Linux distros)
  1. Create a "live USB" of elementary OS
  2. Resize my main windows partition to make room for the elementaryOS partition
  3. Boot into the live USB (by rebooting Windows in a special way to get it to use the USB instead of going directly into Windows)
  4. Run the elementaryOS installer (actually pretty nice, except the part where the "third party" components won't install unless I disable SecureBoot, which despite criticism by non-windows vendors has actual security benefits that make it a lot harder to pwn machines left lying around)
  5. Go into my laptop's UEFI firmware menu (by rebooting Windows in a special way) and add the elementaryOS bootloader key to the list of approved secure keys, and enable the F12 boot menu so I can actually boot into it
  6. Frantically mash F12 to get the boot device menu
  7. Once finally booted into elementaryOS, realize my wifi chip is not supported by the current stable release
  8. Repeat almost all of the above with Beta 2 of elementaryOS Loki
  9. Finally be at a functioning desktop environment with wifi
(Omitted here is the last hour I spent trying to install software updates at the prompting of the built-in application manager, which somehow managed to uninstall the file manager and fail to reinstall it because the library it depends on is version 0.4.0.1+r980+idfk~ubuntu instead of 0.4.0.1+r980+idfk~daily~ubuntu, and nothing I can do will convince it that the daily version is => the version it wants.)

Here's what I had to do get the same in windows:
  1. Take my laptop out of the box
  2. Turn it on

And I haven't even tried running something in elementaryOS which needed to use the nvidia card instead of the intel one.

Not that I'm saying windows is perfect -- both graphics drivers are crashing on moderately difficult rendering work (intel on m64py, and nvidia on Elder Scrolls: Online) and the entire thing is sluggish as all hell for some unknown reason, possibly to do with being on a HDD (I've been booting windows on SSDs for several years now, maybe I just got used to it??). But it's so much easier to set up and requires so much less maintenance.

This has been a great rant but so what. What can we do?

I don't know. I really don't. There is so much infrastructure built up to streamline Windows usage and such a scattered effort to make Linux more usable, it seems insurmountable. I'm curious about the thoughts of people here. Does anyone have any ideas about how to make it better? Is Linux even salvageable? Could OEMs ever be convinced to ship a non-windows OS?


Some of the points you bring up are legitimate complaints, but your section on what you have to do to get Windows running is an unfair comparison. If you are going to compare the process of installing a different OS on a machine, you should do the same with either OS. Otherwise you're merely pointing out that most computers come with Windows preinstalled. Obviously you can't simply turn on your laptop and magically run ElementaryOS. Many of the steps you seem to be complaining about wrt installing ElementaryOS will be the same (or very similar) steps you would have to take for installing Windows.

That being said, if your argument is that people use Windows because it's more readily available, you didn't need a long (and very biased) rant to do so.
strangezak
I should make a list of what i had to do to install Arch in a VM earlier this week. It was HELL


There are plenty of tutorials online, most notably The Beginner's Guide on the Arch Wiki, which enumerate most of the steps you probably went through (and more).

I would also like to point everyone who would like to know more about why Arch is the way it is to The Arch Way. The goal here isn't to be a replacement for Windows or to have a streamlined installation process. It is intentionally made so that you must make choices about your system every step of the way. Therefore, comparing the install process of Windows to something that has a very different purpose wouldn't make much sense.

Arch isn't for everyone, but I promise you that if you go through their install process very thoroughly and with the goal of really understanding how your OS works, you'll learn a ton and it won't be "HELL," but enlightening.
I also think Andrew's comparison is rather apples to oranges. If you compare a pre-installed OS to a dual-boot, the effort to install the dual-boot is always going to be higher.

Heck, if you install Windows on a machine which hasn't had Windows on it yet, you're going through most of the same steps.

Andrew's WiFi card notwithstanding, Linux has better out of the box support for hardware than Windows does. By which I mean that if you do a clean install of Windows versus a clean install of Linux, chances are you're going to be hunting for driver disks or downloading drivers to a USB stick more often for your Windows install. That has at least been my experience installing - from scratch - Windows and Linux on tons of machines in the past. That being when you build your own PCs.

In fact I've had to slipstream new Windows CDs to get them to even install on some hardware because a harddisk wouldn't otherwise be recognised. That was depressingly common not all that long ago.

I do agree that SecureBoot has its benefits. Maybe ElementaryOS don't have their blobs signed by Red Hat's key? You can have your cake and eat with Linux as well. Also, as mmozeiko points out there are vendors who ship machines with Linux pre-loaded. Dell's even one of them on select models.

As for salvaging Linux, I'm not sure it needs salvaging as much as Windows does. Sure, it has its quirks, but it's not actively user hostile like Windows. You could almost be forgiven for believing Ballmer, Sinofsky and Nadella to (have) run a false flag operation the way they've been actively antagonising their userbase. All that needs to happen for Linux or another OS to succeed is Microsoft keeping up their antics. ;-)

Edit: Latest case in point is the nerfing of Win Pro in the anniversary update, making it so that among other things Cortana can no longer be disabled unless you run the Enterprise version. Much to the dismay of the SMB crowd, I'm sure.

Edited by Jeroen van Rijn on
CaptainKraft
Arch isn't for everyone, but I promise you that if you go through their install process very thoroughly and with the goal of really understanding how your OS works, you'll learn a ton and it won't be "HELL," but enlightening.
I've tried to install arch on a VM--it's not the same as installing it on an actual piece of hardware
Linux isn't a great desktop OS, that is all. It wasn't really meant for that anyways. It's great for other things. I love my LinuxFromScratch, my aboriginal VM and my Alpine server, but comparing it to Windows is a little strange IMHO. They target very different demographics.

The best experience I've had with linux is simply not installing any desktop (no X or anything). Any other situation that needs a UI I find better on Win/OS X.

== Let the flamewars begin! == :)
Yeah I agree it's not a fair comparison when Windows comes shipped on your laptop and is already cleared by SecureBoot. Linux isn't really to blame for that. I also agree about the drivers; for example my TP-LINK WiFi dongle works out of the box on most distros I've tried.

Linux definitely has its share of irritants but I'm not sure what the solution is if you want it to replace Windows as a whole. You've already got companies like Canonical or Red Hat trying to streamline the experience but I guess it's not enough when a lot of the dependencies are scattered across communities. But I more or less agree when people go on rants about Linux (I'm not including this one) and sort of expect open-source contributors to do all of the work for us. I can't blame somebody who's already given a lot of their personal time to a specific module (or is paid by his employer to work on a specific module) for not wanting to fix another module down/upstream that's causing an issue.

Personally I still use Windows for PC gaming and Visual Studio but unfortunately Microsoft is trying its best to be anti-consumer. Staying on Windows 7/8 isn't a permanent solution and you've got increasingly annoying updates like Windows 10 Anniversary Update which forces you to have Cortana turned on. I'm sure the average user doesn't give a crap about all this (non-coders at my job are excited to have Windows 10 just for the new UI...) but as a developer I'm increasingly being pushed towards staying on Linux and enduring its warts, because at the end of the day, Linux isn't trying to screw me over.

Edited by yon on
I've tried to make Desktop GNU/Linux work so many times, on every flavor and distro imagineable (30+ easily). Maybe it's because I'm using a 2009 laptop, but the experience nearly always ends in some nagging frustration. Then I install Windows and it's less irritating enough to be ok for a while, until the whole OS just gets sluggish.

There is no solution, only tradeoffs, for me at least.
Apropos of nothing, I would like to mention that I recently had Manjaro recommended to me on Twitter. I was skeptical because people always recommend Linux distros to me, and they invariably never even install let alone work properly with my trackpad/wireless/GPU/whatever, but Manjaro actually did. By default. I was pretty shocked. I'm actually rather interested to give Linux another serious try with a Manjaro distribution as soon as someone ships a usable debugger for the OS :)

- Casey
cmuratori
Apropos of nothing, I would like to mention that I recently had Manjaro recommended to me on Twitter. I was skeptical because people always recommend Linux distros to me

Manjaro has been my distro of choice since early this year. I recommended it to Andrew right after he posted this rant and he seems to be OK with it too. They are a hard-working, Arch-based community.

Edited by Abner Coimbre on Reason: Formatting.
Arch is the best!
In my experience Arch works best from all the Linux distributions I have tried. Because it always uses latest stable versions of packages, so you are not stuck with 3 years (or something) old packages like Ubuntu. Also Arch doesn't force you to use something specific - all configuration and choosing what to use is up to you, so you can configure system to do what you want instead of "magically" working/not working.