> With WSL2 there was never before LESS reason to switch away from Windows.
Yes and no.
WSL 2 provides a decent development environment (I've been using WSL 1 and now 2 since it's been available), but there's still much to be desired. Such as not having horrendous file mount performance on Windows mounted drives, not having to worry about WSL 2's VM eating up and not reclaiming your disk space and memory. But let's ignore those things because IMO they will be fixed in due time.
Windows is way behind the curve with tiled window managers vs native Linux and while technically you can run VcXsrv and run a tiled window manager through WSL 2, it totally fails on multiple monitors and also requires installing everything within WSL's file system. It just feels like you're battling 2 operating systems.
Also from a "just let me use my own computer as I wish" perspective, Windows is still spying on you with telemetry even with basic mode and using Windows Pro and it forces updates on you. This likely will never change and if you lived in a world where you could run everything you wanted on either Windows or Linux, I think most people would probably opt to have the OS that doesn't spy on you and reboot on its own right?
IMO native Linux is more than just features vs lack of features. It's a whole mindset shift on how everything works and how you can mold your dev environment to do exactly what you want instead of being forced on what to do by some company. I would switch to native Linux in a heartbeat if Davinci Resolve worked well on my hardware (a video editing tool that runs on Linux). Video editing is the only use case stopping me from switching.
> Windows is way behind the curve with tiled window managers
Just use one of the third party utilities.
> it forces updates on you.
Prior to this, Microsoft received over a decade of scorn for not forcing updates for 0-days and other RCEs. RCEs in the wild on Windows make the news. RCEs in the wild for months on end are bad for the entire world.
Does no one remember the complete nightmare that was going to a relative's house and realizing they hadn't updating Windows in 1 year? From bot nets to hidden folders full of pirated files (or worse...), and an overall general expectation that all banking credentials ever entered on that machine are compromised.
Yes mandatory reboots are irritating, yes it would be nice if Microsoft hired back the armies of QA people they got rid of years ago so that the updates were more reliable, but those updates serve a real purpose.
> Does no one remember the complete nightmare that was going to a relative's house and realizing they hadn't updating Windows in 1 year?
Yes, but at the same time I ran Windows XP and Windows 7 without any updates for about 15 years combined and I can count the number of times I had to format due to malware or a virus on less than 1 hand.
I once had 280 days of uptime on Windows 7 while constantly running VMs, an entire dev environment, games, etc.. It was a really good OS for what it was.
I guess the moral of the story here is if you want to play with sharp knives you should have the option to. Power users who have been using computers for most of their lives shouldn't be put on the same playing field as your 65 year old Aunt or Uncle who still thinks AOL is the internet.
Exactly. It's one thing to aggressively push necessary security fixes (though they should always be optional if the user really wants, because nothing is perfectly reliable). But Microsoft hasn't done that with Windows 10. Instead, it's been systematically bundling functionality updates in with essential ones, and some of those functionality updates are unwanted or even actively not wanted by some users.
> Does no one remember the complete nightmare that was going to a relative's house and realizing they hadn't updating Windows in 1 year? From bot nets to hidden folders full of pirated files (or worse...), and an overall general expectation that all banking credentials ever entered on that machine are compromised.
When I go to my relatives for which i have installed a version of Linux, even though they don't update it very often it is never infected with anything. No malware, no virus, nothing. Always working exactly as I left it. That's one less headache when I deal with family members.
> When I go to my relatives for which i have installed a version of Linux, even though they don't update it very often it is never infected with anything. No malware, no virus, nothing. Always working exactly as I left it.
If enough people do this for their family members, when the Linux malware comes, it will sweep like a wildfire on dry wood. A complacent attitude, being trained not to worry about updates or malware is likely setting people for a very unpleasant surprise down the road.
I’m not so sure. Most malware I find on friend/family windows computers is installed by the user, and Linux gives you a lot more rope... At least windows has defender. The reason Linux systems that are given to family members don’t generally get malware is because those family members lack the technical ability to successfully install any new software on the machine.
> I would switch to native Linux in a heartbeat if Davinci Resolve worked well on my hardware
I think this is the KEY reason why I'll probably be running windows forever.
It's not that linux doesn't offer a bunch of benefits (indeed, that's why I use WSL heavily). It's that so much GUI software only really supports Windows or Mac. Linux is less than an afterthought most of the time.
This, but even then: I also need an audio stack that (a) just works, you plug in the audio interfaces, the end, and (b) supports VST/AAX/AU plugins because fairlight without external plugins is a hard no.
An i5 4460 @ 3.2ghz, 16gb of RAM, SSD, GTX 750 from ~6 years ago. My exact hardware list is here[0].
Every time I export videos of any format with Resolve it adds weird black artifacts and audio pops to my videos. The audio pops happen in every video and it only happens in the exported video, it's fine in the timeline. I'm only dealing with 1080p 30 fps videos too. These issues happen on Windows too with Resolve where as video editing tools like Camtasia are super fast and I have no problems even after 400+ videos.
I tried so hard to switch. Spent close to an entire week trying to debug everything and couldn't resolve it (pun intended).
Besides that, the machine works really well for overall Dockerized Flask + Rails + Webpack development / ops work / recording screencast videos with OBS / video editing with Camtasia / 1080p gaming (although I have a 2560x1440 monitor) so I haven't really had a strong urge to retire this workstation and build a new one.
I posted the details about what happened along with sample videos on the forums but it never got a response. Resolve doesn't offer email support for the free version and the paid version has no trial so I have no way to test if things would get fixed with the studio version.
I tested it on Debian (unstable channel at the time), but the same problem happens on Windows too. If I were to try Linux again it would involve setting up a dual boot and maybe trying Arch, or at this point Debian stable maybe (when I tried unstable it was before Buster was available).
WSL 2's file system is running in a VM with limitations.
I have ~200gb of files sitting on a non-SSD that contain things like videos and a bunch of other files that I don't want to put in WSL. I'd really like to be able to use tools like find, grep and friends to interact with those files.
With painfully slow access to Windows mounted drives this makes using those tools not possible in practice. No one wants to wait 15 seconds to grep through a directory where the same operation finishes in 1 second in native Linux.
This becomes a real nuisance with my backup script that rsyncs things from WSL 2's file system + Windows mounted drive onto an external drive. It takes rsync over 5 minutes (!) just to figure out what it needs to send over the wire because statting hundreds of thousands of files on a Windows mounted drive is ridiculously slow. With WSL 1 it used to take about 5 seconds to run rsync with that backup script to transfer a very small diff of files. I'm not exaggerating here either. It's literally 5 minutes vs 5 seconds and I'm sure native Linux would probably be 2-3 seconds.
Sluggish UI, dark patterns, OS rebooting when it feels like it, OS waking up during the night for some shenanigans, surveillance, nagging, ads... I don't know how people can have so little self-respect to use windows. Feels like living in a rental apartment with a creep landlord, while with linux you own the house.
Yeah, that's a good analogy! And it captures how you have that freedom, but also the onus is on you to take care of things :-) Of course, that's part of the fun of both.
I personally hadn't used Windows in a long time, and I had to switch over for work for a year or so, and was pleasantly surprised (coming from Windows 98 to 10), I was able to be functional in all of 2 minutes, there were minor annoyances, but also things I found better, I couldn't say if it was better or worse in any definitive way.
Arguments about what is "better" just seem like what I like more. I feel like I'm basically rooting for a sports team. Someone can show me "proof" that their set up is better, and I'm still going to root for my home teams.
With that being said, I wish we would collectively as the tech community be less focused on branding and software and more so on the working conditions throughout the supply chains that end up on our desks. Who cares if you have a pc/bsd/mac/linux/solaris/android/iphone set up if the pieces that go into it hurt other human beings and the environment.
if you use a laptop, no doubt. long time linux + mac os user. but now running windows on my laptop. for a laptop windows experience is better than linux - hibernate, power management. my linux workloads are all accomplished via terminal hence a vm is sufficient.
That might depend on your hardware, but over the last few years I've had all those things on Linux with minimal (or no) tweaking on laptops. I did search beforehand about Linux on the Dell XPS I'm on right now, but the situation is really very good. And there are Linux laptop vendors too, with more open hardware.
Battery life. Touch screen. Printing (still have some remaining needs for it).
The other thing, is that it has ceased to matter. I was a Linux fan for a number of years. I learned a lot from it, and I still maintain a number of Raspberry Pi builds in my house.
But today, virtually everything that I care about is platform independent, most notably the "scientific" Python toolchain. My programs run without modification on any platform. So I've become platform agnostic, and use whatever makes the best use of hardware resources such as the two things mentioned above.
However, in a certain sense, I've ditched Windows, because I've ditched caring about platforms.
I get 12+ hours battery like from my HP Stream (it kept going through the last several blackout). Configuring my laser printer driver is a slight hassle but it works. A touch-screen laptop sounds icky, never tried it.
The reason I use Linux is nothing is going to be pulled out from under me. No long random updates, the computer is mine.
Linux makes good enough use of the massive resources a modern laptop has.
What Linux distribution do you use on HP Stream? I used Ubuntu on mine and for some reason Firefox is intolerably slow. That really does sour things for me
Try enabling hardware acceleration (layers.acceleration.force-enabled=true in about:config I think). I was having issues until I learned it was disabled by default on Linux.
In a sense that was me too, where everything moved to emacs, Firefox, programs like that where I can run them where I want. Games was the big hold over, along with photo editing (hello Darktable). It is great to have that freedom now.
Me too. But when I got new hardware and installed Windows first (because setting up dual boot is easier this way and I had to work with LabView, which worked way better on Windows) I never came around to install Linux.
Main reason for this is the Windows Subsystem for Linux - -with WSL I could use all the tools I run on Linux and my workflow didn't change much. I use ConEmu with WSL as a drop terminal and it works totally fine.
To be fair Steam got massively useful on Linux the day they released Proton. It made the number of games you could play go from a few thousands to something like half of the Steam catalog.
Is there a Linux friendly GPU you recommend? I have a NUC with Ubuntu and 32gb of RAM that I wouldn't mind plugging an eGPU into if it meant I could play my Steam library (I haven't touched Windows for home/gaming about in 4 years)
AMD is definitely recommended these days, but Nvidia GPUs also have excellent drivers but may require some work depending on which distro you are on. As for eGPUs, please carefully check how to handle that on Linux as it's not always supported out of the box.
The big deal is that time is valuable. I am at a point in my life where I have sufficient disposable income but nowhere near enough time to do the things I want. Each minute I spend researching an issue, tweaking a config file, or tracing down whatever obscure dependency the script someone on Stack Overflow says will fix the problem I'm having is a minute I don't spend exercising, sleeping, reading, or partaking in other hobbies.
I ran Linux as my primary desktop OS when I was in High School and College. I fought with NVIDIA and printer drivers, I tweaked XF86Conf to get dual monitors, I cursed more sound subsystems than I care to remember. I was fairly fluent - you had to be simply to get a working system back then.
Things have improved somewhat - I can install a distro on a laptop (such as the T420s I currently run Linux on) and it will support my wireless networking and my native display resolution and my touchpad out of the box. The technical pieces have improved. What hasn't improved is the mindset.
Linux doesn't care about the user. Linus may go on about the kernel never breaking userspace, but that doesn't stop userspace breaking itself over and over - by design or accident.
I upgraded my laptop to the latest version of Linux Mint yesterday. The preferred way to do that is to wipe my laptop, do a clean install, and reconfigure everything. How is that an acceptable user experience? There is an upgrade script, but it forces you to remove any third-party apt repositories and has no override switch. I commented out my third-party repos, did the upgrade - and it deleted those entries from /etc/apt/sources.list.d. Thanks for the data loss! Even without that, the process was painful - it didn't persist my elevated credentials, so I had to come back during the upgrade and type my password at a sudo prompt a total of 3 times over the course of half an hour.
When pieces of the Linux ecosystem play together, it feels more like a lucky accident than anything planned. For instance, let's say you want to try out the i3 window manager. Most guides will tell you to use dmenu as a program launcher. This works fine right until it doesn't - let's say you want to run a program which requires root. It will simply silently fail without even an error dialog. You're left to go back to the command line and search around to hope you can figure out what the equivalent command is and run it manually there.
Now, I'm sure you'll talk about how i3 isn't the default Linux window manager and is designed for power users. That's not an excuse for silently failing in dmenu without any information, but let's talk about other areas.
Linux is significantly behind Windows, OS X, and Chrome OS in all areas of accessibility. Screen readers, magnifiers, high DPI, different DPIs for different monitors. This is a combination of multiple UI frameworks each with their own way of doing things and the fact that the greater Linux community has to be dragged kicking and screaming into a modern graphical experience. Linux users are still fighting against compositors, which means that the Linux graphics stack is still trying to catch up to Windows Vista (which is now 14 years old).
I would need to keep a journal to talk about all the little quirks I run into with Linux, but every week there are multiple things. Maybe Icing Window Manager went away, so my Cinnamon taskbar is broken and I have to do research to find that it's been replaced by "Grouped Window List". Maybe my touchscreen isn't working - or is it working and this app isn't responding to its signals? Do I REALLY need to print things from this PC? Is it worth trying to get that running?
Are there solutions to these problems? In theory, yes. In practice, the communities around many pieces of Linux software are either actively hostile to suggestions ("why don't you go code that up yourself"), assume a high level of technical proficiency ("just go manually specify all of your network configuration in this text file") or expect an investment of time ("haven't you read these four documents"?)
I am unwilling to spend the time to use Linux that regularly. I have been using Windows devices in one form or another for 27 years. As time has gone on, the one thing I've come to respect is that for the most part they just work. I can remove hardware, add hardware, remove software, add software, upgrade repeatedly - and they just keep trucking. Other than times when I have manually screwed up Bitlocker, I cannot recall the last time my Windows machine wasn't able to boot into a graphical environment with networking - no matter what I had done. I suppose it would have to be back in the XP days. Despite people on this forum and other complaining about upgrades, there are millions of PCs out there and the vast majority go through windows updates every month (including major updates twice a year) without a hitch. Every time I do a major Linux upgrade it's far more of a gamble.
Mint was just the most recent example in my head. I could give examples from nearly any open-source program with a GUI, particularly a Linux-first app. When developers aren't being paid (and therefore aren't being told what to do), they work on the parts that interest them the most. These are overwhelmingly backend/fun algorithms and overwhelmingly NOT user experience.
I have upgraded between Debian releases by editing sources.list then apt-get update && apt-get dist-upgrade for years now: I’ve had a couple annoying issues (sysvinit->systemd gets an honorary mention here), but it’s mostly “Just Worked”.
Your school or work requires you to use Windows and you sometimes need to be in a windows environment to do the thing the "real world" does. And I'm not dealing with wine. It's okay at best, tediously frustrating at it's worst. For a personal machine however, Linux has been more than acceptable for the last decade.
Same, I haven’t booted up my Windows 10 installation for at least 4 years. That’s partially because I haven’t needed it, but also because the thought of installing all of those pending updates is a strong motivator for finding Linux-compatible alternatives.
Yup, that's kind of the point, it really isn't a big deal these days (or at least less and less reasons one might have to be on Windows). The big one, games, has seen massive improvement in the last few years with Wine/Proton/Steam.
Tried it on my Surface tablet recently. Everything worked on some level, but moving on due to the pen being laggy, no writing app, and an occasional green tint that requires a reboot to stop.
I've almost switched over to Linux full time too (also using Arch like TFA). The one thing keeping my Windows partition around now is World of Warships, everything else I play runs pretty much flawlessly either natively or via proton. It's amazing having actual choice and configuration for my dev workflow again.
I, for one, am hoping Microsoft inverts WSL and releases their own Linux distro based on Debian, maybe with a proprietary Windows compatibility layer called "LSW" with a virtualized NT kernel hosted in KVM. How about call it "Windows X"?
If something like that were available on ARM (even without the baked-in NT support), I'd probably switch from macOS, or at least buy another computer to use MS Linux for my development work. MacOS is less and less appealing for web development these days, but I'm not switching to any NT-based Windows.
IIRC with the introduction of WSL2, they ended up having a common hypervisor for both NT and Linux kernels. That is, booting into Linux and invoking Windows from it should be about the same thing as invoking Linux from Windows via WSL.
Debian is great, but also sooo late. I wish on something more dynamic.
- Docker on macOS is an absolute performance dog when you get above about 8 containers running simultaneously. I finally gave up and set up a Linux VM via Parallels. Now my battery lasts at least twice as long during local development.
- Cloud deployment targets (including serverless) are almost always running Linux, so running/debugging on the Mac is less accurate (unless you're using Docker, but performance is bad).
- Homebrew is great and all, but Ubuntu is a more important compile/release target for most open-source packages.
Now for front-end development, I still prefer the Mac for a few reasons, especially the quality of the screen, trackpad, and the Quartz display-PDF window manager. If design work is necessary, some of the best tools are on the Mac.
Maybe a Linux VM in Parallels on macOS is the best solution for now, but you can see why I'd prefer a Microsoft (or Apple for that matter) Linux OS if I could have that with a great screen, trackpad, display-PDF window manager, and graphics/design software.
I do web dev on Linux on a Thinkpad X1 but it seems I'm clearly in a minority there -- which I think is a bit weird since Apple is so obviously anti-web.
For me, it's a great experience; maybe you should try it? ;)
For a long time I kept 1 windows machine around for video games. Proton had been out but I didnt need to change. Then I started getting BSODs far too often. Reinstalling windows didnt fix the bsods. Didnt seem to be hardware. I decided screw it and go linux. Never had any crashing after that. I had to give up a couple games that still didnt work with proton.
Then I had a daughter and LOL time for gaming? LOL