It's Time to Switch: An Opinionated Linux Guide
In this post...
Linux is currently getting what feels like more attention than ever. Some of this is of course due to recent failings and poor decisions at Microsoft, but I think those are just examples from a larger downward trajectory that Windows has been on for years. Linux, meanwhile, is in the best state it’s ever been and is only getting better. I use Linux, Windows, and macOS daily, and I’d even say Linux is the best experience of the three in the areas that matter most.
I’m writing this guide for anyone who’s maybe heard about Linux but isn’t sure where to start with it. It’s much easier to install and use than you would think. The hardest part is knowing where to start with all the options available, which is something I hope to tackle with this post.
Before we begin, I want to give a heads up that I haven’t written this guide to be a one-stop resource. Think of it as a starting point based on my own takeaways from using Linux. My needs and opinions will probably be different from yours, and in fact I’d be surprised if they weren’t!
Why you would want to switch
Microsoft’s poor decisions
Your computer is a tool. Shouldn’t it be helpful when you need it to be and not get in the way? As someone who uses both regularly, I’ll say that Linux has gotten increasingly better than Windows in this regard lately thanks to both rapid improvement on Linux’s side and poor decisions on Microsoft’s.
The impression I get is that decisions on how Linux software is built seem to be driven by actual need, whereas Windows seems to be driven by shareholders and whatever is going to earn managers recognition. There’s overlap, sure, but you also end up with a lot of aspects of Windows that range from annoying to plainly hostile.
As an example, when I installed Windows 11 Pro I went through a lot of trouble to set up a local account instead of a Microsoft account. It’s not something that’s at all possible to do accidentally. Yet Windows can’t take a hint and places permanent ads for Microsoft sign-in in several prominent places. The few that I can dismiss only let me say “remind me later” instead of “NO” which I think says something about Microsoft’s relationship with its users.
Then there’s all the recent news which together paints the picture that Microsoft does not value security or privacy and has developed a major user trust deficit. Rather than summarize, I’m linking a few articles here for you to read at your leisure — I’d rather not spend too much time on Microsoft after all.
- ProPublica — Nine Takeaways From Our Investigation Into Microsoft’s Cybersecurity Failures
- Kevin Beaumont — Stealing everything you’ve ever typed or viewed on your own Windows PC is now possible with two lines of code — inside the Copilot+ Recall disaster.
- Windows Central — A PR disaster: Microsoft has lost trust with its users, and Windows Recall is the straw that broke the camel’s back
Linux has a lot going for it anyway
But really, I’d be encouraging people to switch to Linux even if everything inside Windows and Microsoft was all peachy. The current goings on just make it easier to justify switching. Some quick points about why I think Linux is worth considering based on my experience:
- Linux gives you a clear sense of ownership over your computer since it respects your choices.
- Speaking of choices, Linux offers a lot of them which makes it possible to find the setup that works best for you.
- Linux respects your privacy.
- If you run into technical issues, solutions are typically easier to find on Linux than they are on Windows.
- Linux is free and can save you some money if you’re building a computer.
- Linux is more performant and can extend the lifespan of older hardware.
- A lot of computer work today is done through the web browser or web apps which typically work the same across all operating systems. You’ll likely be able to switch without changing much of your workflow.
- If you do any kind of programming, the tooling for it is likely easier to use on Linux.
Why you wouldn’t want to switch
There aren’t many, but there are some reasons why you might want to stay on Windows for the time being.
Gaming
Don’t get me wrong, gaming on Linux is in an amazing state. Steam in particular makes it really easy to just forget about compatibility thanks to its Proton compatibility layer, so much so that Valve had enough confidence in Linux to have it serve as the base for its gaming handheld, the Steam Deck.
The main issue though is when games come with invasive anti-cheat. The state of anti-cheat on Linux is gradually improving, but there are still a lot of anti-cheats that are just incompatible and, in all honesty, probably will remain that way for the foreseeable future.
The other blocker is VR if that’s something you’re interested in. VR is currently possible on Linux but still very much a work in progress. For me personally, this is the one reason I still run Windows alongside Linux on my computer.
In general though, if you don’t play competitive games or VR I’d say Linux gaming is in a good enough spot that you shouldn’t let it be the thing that gets in the way of you switching. ProtonDB is a great site with crowdsourced reports for Linux game compatibility that I’d encourage you to check out if you have any hesitations.
You really, really need that one piece of software
I think this point is valid mainly for people relying on specific professional tools. Software is increasingly cross-platform today, and for the cases that aren’t there are often high quality free alternatives available.
Still, putting up with Windows for now might be a worthwhile price to pay if some software you’re dependent on isn’t available on Linux and you’re sure you can’t make do with an alternative.
Choosing a desktop environment
So you’ve decided now that you want to make the jump to Linux. Where do you start?
If you’re doing research into how to get started with Linux then you’ll hear all about different Linux distributions, or distros for short. You can think of a distro as the collection of software that goes on top of Linux when you install it. It’s sort of similar to how Google and Samsung phones come with very different software, but they both run Android apps and largely have the same capabilities.
My advice is to not worry about the specific distro you want right away. Instead, start researching desktop environments.
A desktop environment is basically the core software that you see and interact with while using your computer. Different desktop environments might have different ways to manage your windows, launch programs, and customize your experience. Knowing the kind of desktop you want can help you narrow down your distro search later on to ones that offer that desktop as an option.
Don’t worry about software compatibility when choosing a desktop environment. While some Linux programs are made to especially fit in on a particular desktop environment, that doesn’t mean they won’t work on others.
For a new user, I’d strongly recommend picking between the Gnome or KDE Plasma desktop environments. There are plenty of other great desktop environments out there, but these two are the most popular and will be the easiest to find online support for should you ever need to. Plus, Gnome and KDE have very distinct strengths and weaknesses. Many people will be very happy with one or the other as a result. I’ve written a couple notes on each below, but consider looking up some videos as well to get a full picture.
Gnome
Gnome is very opinionated as far as desktop environments go, especially compared to KDE. This can be a good or a bad thing depending on what you’re looking for. Gnome has a clear vision of how it wants you to use it which, in my opinion, makes for a very friendly and consistent user experience. Pretty much all programs built specifically for Gnome are very well designed and adhere to a “do one thing and do it well” philosophy. MacOS is generally regarded as being well-designed, and I think Gnome’s experience is at least to the same level of quality.
Gnome was my first desktop environment and is also my current. One of the things that initially won me over was its heavy emphasis on virtual workspaces. Windows and macOS both have this feature these days but I find their implementations too clunky and inconvenient to be very useful. Gnome, on the other hand, puts virtual workspaces in the center of your workflow. Even if you’ve never used them before on other desktops, you’ll quickly find yourself relying on virtual workspaces in Gnome and wondering how you ever got by without them.
There are some reasons Gnome might not suit you though.
Gnome is quite different from any other desktop you’ve used before, especially Windows, so it will take some getting used to. I don’t think it will take long to adjust, but it’s still a consideration. You can pretty easily install extensions to modify Gnome’s default behavior (more on those soon), but I recommend not relying on too many of them at once.
Gnome also may not be for you if you’re the sort of person who enjoys customizing and tweaking their setup. But if you’re looking for something that’s straightforward with a cohesive experience, you should definitely consider Gnome!
Gnome extensions
As I mentioned, I recommend being pretty minimal with the extensions that you rely on. The more extensions you enable, the more complex your setup becomes. Extensions are community-made, so there’s no guarantee that they’ll all be compatible with each other or be updated quickly after major Gnome updates.
There are a few extensions that I think are very worth checking out though.
- Either Dash to Dock or Dash to Panel. Some distros like Ubuntu and Pop OS already come with their own versions of these.
- Alphabetical App Grid
The easiest way to install extensions and keep them updated is with Extension Manager.
KDE
KDE by default gives an experience that should be very familiar to people coming from Windows. But really, it’s so customizable and has so many features that you can craft pretty much any type of experience for yourself if you choose to.
The programs KDE comes with are also much more powerful than they have any right to be. I can pretty much guarantee that you’ll never need to replace one of the built in KDE programs with something else because it’s lacking features.
The drawback is that KDE may be slightly overwhelming to some users. And even if you’re not overwhelmed, you might simply appreciate something that’s simpler which you don’t really have to think about. Then again, KDE typically has pretty good defaults so you might not even feel the need to dig into the settings too far.
If you know you want something that’ll already be more or less familiar and you like customizations, KDE could be a great option!
Choosing a distro
Once you have an idea for the kind of desktop you want, it’s easier to choose a distro.
There’s lots of differences between Linux distros, but here are the most important ones to consider in my opinion.
- How often major updates are released
- Ease of installing new software
- Level of support available
Each distro I’ve written about below should be pretty suitable for new users based on those points.
There are other differences too, of course. Some distros will add their own tweaks to the desktop environment or come with extra software pre-installed, but those are often minor differences (with some exceptions, as you’ll read further on).
Below are my top recommendations for first-time Linux distros along with some of my thoughts on other commonly recommended distros. I’ve used each of these distros as my main operating system at some point throughout the years!
Fedora
I’ve used several very different distros ever since I first got started with Linux in 2015. Fedora Workstation is what I’ve most recently settled on and I find it very easy to recommend as a first-time Linux distro for anybody.
The main edition of Fedora comes with the Gnome desktop environment with very few tweaks on top, which I find works well for me. There are versions of Fedora that come with other desktop environments though, including KDE.
I personally really like the balance between stability and adoption of new tech that Fedora seems to strike. I also find it incredibly straightforward. They’ve got good documentation, plus it’s a popular distro that’s easy to find community support for.
Fedora releases new major versions regularly about every six months, and each one is supported for 13 months.
Ubuntu
Ubuntu needs no introduction. If you’ve heard of Linux, you’ve probably also heard of Ubuntu.
The main reason I would recommend Ubuntu is just how popular it is. It’s extremely widely supported by everyone.
Like Fedora, Ubuntu’s main edition comes with Gnome, with editions for other desktop environments, including KDE, also available. Ubuntu adds more customizations to Gnome than Fedora does, the most major one being a persistent app panel on the left side of the screen. Because of that, some users may find Ubuntu a little bit more familiar out of the box.
The software packaging format Ubuntu uses, called snaps, is somewhat controversial among Linux enthusiasts. In my opinion, the main thing not to like about snaps is that Ubuntu favors them over other packaging formats that are already very common across other Linux distros. Snaps really don’t see much use at all outside of Ubuntu. It’s not something I think a new user should worry too much about, but I thought it worth mentioning because you may see it brought up.
Ubuntu versions are released every six months with each one being supported for nine. There are also long-term support (LTS) releases available. Those are released every two years and are supported for five. Basically, it’s a choice between having to update more frequently but getting newer versions of software sooner, or having to update less frequently but having to wait longer for new versions of software. If you’re unsure, I would recommend the standard non-LTS release for most people.
Personally, I’d recommend Fedora over Ubuntu but I don’t think you can go wrong with either.
Linux Mint
Linux Mint isn’t one of my top recommendations, but I thought I’d mention it since it gets brought up a lot in discussions about distros for new Linux users.
The main reason I don’t highly recommend Mint is that is uses the Cinnamon desktop environment. Cinnamon is a perfectly fine, reasonably straightforward desktop and will be familiar to anyone who’s used Windows, and I actually think it’s sort of a middle ground between Gnome and KDE in that way. I just also think that KDE or Gnome make for a better overall introduction to Linux desktops. If you’ve looked into both of those first and are still interested in alternatives, I think Linux Mint with the Cinnamon desktop is a great option.
Pop_OS!
Pop OS also frequently comes up in discussions about first-time Linux distros, which again is why I’m bringing it up here.
Pop OS comes with a heavily customized version of Gnome that adds several advanced features like automatic window tiling. It makes Pop OS stand out as a really unique option well-suited for people who appreciate power features. Even if you’ve decided that Gnome isn’t for you, I’d still recommend giving Pop OS’s take on it a look.
One thing to note is that System 76, the company behind Pop OS, is currently developing their own desktop environment called Cosmic which will replace Gnome in Pop OS when it’s ready. It looks really promising and I’m excited to check it out when it’s released. From my look at the pre-alpha it seems that Cosmic will function similarly to how Pop OS’s customized Gnome currently does, so I’m willing to bet the transition from Gnome to Cosmic won’t be very jarring for users.
I don’t think it’s for everyone, but people who are open to trying interesting advanced features in their desktop will likely want to give Pop OS a close look.
Installation overview
As I said in the beginning, my goal here is to help people with what I think is the hardest part of switching to Linux: everything before the installation. But I figured I may as well give a quick overview of the install process so you’ll know what to expect.
Once you’ve downloaded your chosen distro, you’ll need a USB drive and a program such as balenaEtcher or Rufus to load the distro onto the USB drive and make it bootable. This will erase everything that’s already on the drive so make sure there’s nothing on it that you care about.
Next you’ll need to get your computer to boot from the bootable USB you just created. You can do this by pressing one of the function keys (commonly F12, F10, or F2) while your computer is starting up to access the boot menu. From there you can select your USB drive. If you accidentally boot into your BIOS settings instead, that’s also fine. You should be able to raise the boot priority of your USB from there so it’ll boot by default if plugged in.
Once you get the USB booted you’ll likely be greeted with the desktop of the distro you chose. Most distros will launch into a live environment when booted from USB that will be similar to what you’ll get when you complete the install. This is a chance to test drive the distro a bit before you commit. Performance should be similar to how it’ll be after you complete the install, other than the longer loading times that can come from running an OS off a USB.
You’ll need to decide exactly where you want to install your Linux distro to. Are you already ready to fully commit and leave Windows behind? In that case, feel free to tell your distro’s installer to erase your disk and install Linux over it. Just make sure to backup everything important on it first (which you should probably do anyway just in case)!
Most likely you’ll instead want to setup a dual boot with both Windows and Linux. You can either shrink Windows so it and Linux can share the same drive, or you can add a second drive to your computer to dedicate to Linux. You’ll be able to choose between Windows and Linux each time you start up your computer. Either way, the steps for this route can get a bit involved and are out of the scope of my post here, but there’s no shortage of guides online that should help you through this process.
Wrap up
That was a lot, but hopefully you found it helpful. I know you tend to get pretty trash results if you do an internet search for “how to install Linux” or similar, with a lot of resources telling you to do one thing or another without explaining why. Either that or you get a listicle of popular distros where each summary feels 90% identical. Hopefully this was different and you’re starting to get an idea for where to go next.
Thanks to anyone who gave feedback on my early notes for this post or otherwise helped shape it in some way!
— JP