Summary
- I prefer Hyprland’s dynamic tiling — keyboard shortcuts beat Windows’ floating windows
- A live USB with persistence lets me test or carry a full Linux OS, even revive old PCs
- I control updates and packages; killall and package managers beat Windows’ forced updates and sketchy installers
I am mainly a Linux user, but sometimes I have to return to Windows for work or gaming. Whenever I do, I notice that Windows hasn’t evolved in any meaningful way since I first used it. Compared to Linux, it feels like it’s stuck in time. Let me explain what I mean.
Tiling windows
For the past couple of months, I’ve been using Hyprland on my main workstation, and it’s been the most fun I’ve had with computing in a while. Hyprland is a dynamic tiling window manager. I’ll explain what that means first.
A window manager, if you don’t know, is a part of the operating system which decides how application windows look, where they’re placed, and how they behave. On Windows, the window manager gives you free floating windows, which you can then drag around, resize or snap side-by-side with other windows using the preset layouts. This type of window manager is the most common one and the kind you’ve probably used the most.
There’s another kind of window manager which doesn’t display free-floating windows at random. Instead, whenever a new window or pop-up is launched, the window manager neatly slices the current window in half to make room for the new one. In this way, a full screen window turns into two halves or “tiles.” You can repeat this slicing as many times as you want.
The best part is, you don’t need to decide where to place the new window because the window manager dynamically adjusts the placement of every new window. So a window manager that can “tile” windows dynamically would be a dynamic tiling window manager, and that’s exactly what Hyprland does.
Everything is keyboard controlled: you switch between windows using Super+Arrow keys, you close windows with Super+W, resize them using Super+R and then arrow keys to change the dimensions, and you can even jump between virtual desktops by using Super+the number row. It takes just a little bit of an adjustment period, but once you learn the keystrokes, you will feel the mouse slowing you down. It took me about a day to learn the shortcuts and a day or two more to start using them purely with muscle memory. It’s been months since I switched to this tiling setup and I never want to go back.
The placement of windows and their behavior might seem trivial on the surface, but the window manager can make a big difference in the computing experience.
Linux allows you to install new window managers and swap out the default one. You can even replace the entire desktop environment.
Live-bootable operating systems
When you install Windows, you’re taken through a setup experience, and you can only try it when the OS is fully installed and updated. That means you have to fully replace the current version of Windows to experience the new one, and if you end up disliking it, you’ll have to reinstall the older version to roll back the upgrade.
Credit: Archive.org
Installing Linux isn’t like that. You don’t have to install the seemingly endless selection of distros just to try them because Linux lets you test drive the OS before you commit.
Once you’ve created a bootable media for the Linux distro and loaded it, you’ll be taken to a full-fat version of the OS. This is called a live bootable environment—a full, functioning operating system that just launches off a USB stick without installing.
You can experience the OS, test features, install new apps, and just “test drive” the operating system before installing it. No permanent changes will be made to your main system until you install the Linux OS.
Some people even configure the bootable USB media with something called persistence, which allows you to carry an entire portable operating system on a USB stick. A live USB with persistence enabled can plug into any computer and launch your operating system with all your files, apps, and settings ready to go. Some Linux distros are purpose-built to run off a USB stick and RAM with native persistence support. Operating systems like these are perfect for reviving old laptops and PCs which no longer support modern software since they can run entirely on RAM.
Credit: Puppy Linux
Puppy Linux, for example, only requires 512MB RAM and a Pentium 2 processor to run, and it’s a fully-functional graphical operating system that can run modern apps. Imagine running a modern browser on a computer from 2005—Puppy Linux makes it possible. I’ve actually tested Puppy Linux on one of those old Dell Latitude laptops, and I was pleasantly surprised by how usable it was (other than some Wi-Fi issues that I had to sort out).
Fully configurable updates
If there’s one thing Linux unequivocally does better than Windows, it’s system updates. It all boils down to one concept: Linux lets the user decide, and Windows decides for the user. Anyone who uses Windows for any amount of time eventually runs into the dreaded Windows update screen eventually. Windows updates are automatic and mostly installed without warning or permission. You might need the computer urgently for work, but if Windows decides to install an update, you need to sit through the update (however long it takes because there’s no way to stop it either, because you risk breaking your device) before you can use it.
Credit: Lucas Gouveia / How-To Geek | Melnikov Dmitriy / Shutterstock
Linux does it differently. You will never see a “Please wait, Linux is updating” message during boot on a Linux machine. The user gets to choose when to update and what to update. Linux handles software updates through its package managers (more on those in a few) which require a command from the user to update the system. You can run a full system upgrade with a simple command like:
sudo pacman -Syu
Once you run a command like that, the package manager automatically looks for available updates and installs them in the background. It doesn’t interrupt your work whatsoever, unlike Windows, which can’t install system updates while the computer is running. Most updates don’t even require a reboot, but even if they do (for example, to load a new kernel), it’s no different from a regular reboot. The computer restarts without any interruptions, so you will never see a loading screen like “Do not turn off your device, Linux is updating.”
In short, you choose when to download and install system updates. They install in the background, and you never have to sit through a system update screen during shutdown or reboot.
Killall
Long-time Windows users know that sometimes apps freeze, and you can’t close them with the “X” button, but when you open up the Task Manager to force terminate the app, it just refuses. The “End Task” button that closes apps doesn’t work, and then you can’t even use the Task Manager. It happens more often with buggy apps or low-end computers, but I think most Windows users have experienced it at some point or another.
Credit: Lucas Gouveia / How-To Geek | MonicaZ82 / Shutterstock
What do you do then? You can either try to open the command-line terminal and use the killtask command to end that specific program, or you can reboot the computer. The trouble with the ‘killtask’ command is that you need the exact process ID to make it work. If you don’t know that or the exact program file, you cannot force-quit using the terminal. The only option is rebooting the computer.
I think we can all agree that’s not the best way to handle task management. Linux does it better. You don’t need to know the exact process ID, file name, or mess around with a GUI app just to end a task. On Linux, you can just open a terminal, type ‘kill’ followed by the app name and it’ll instantly quit the app. For example, you could force-quit Firefox like so:
killall firefox
There won’t be any confirmation prompts or failed attempts to close the app. It just works every time and it works instantly. With tags, you get granular control over task management. You can kill processes and apps running as a specific user or sort them by how long they’ve been running.
Package managers
You may have heard that Linux machines very rarely (if ever) get infected with viruses and malware, but on Windows it’s common. The reason being that more malware is designed to target Windows systems, but that’s not the whole story.
To install software on Windows (excluding the Microsoft Store), you’re supposed to visit a website and download a .exe or .msi package, and then manually run the graphical installer or wizard to install it on your computer. That’s a terrible idea from a security perspective. You might accidentally download a fake installer just by clicking the wrong download button somewhere, infecting your device or network. Malware like this could spy on you, steal your data, or lock it for ransom. Even legit installers might sneakily install adware, load a webpage, change a default, or a second program just because you forgot to uncheck a small box somewhere on the setup wizard and clicked ‘Next.’ That’s why we used to get those toolbars on our browsers without explicitly installing them.
Removing software on Windows is just as bad. First, you can’t remove more than one program at a time on Windows without a third-party app. Secondly, Windows makes the app responsible for removing itself from the system. Apps with poor uninstallers leave behind ghost files and services, which you have to manually track down and remove from the system. Overtime, these leftovers just take up disk space that could have been usable otherwise.
Installing, updating, and removing software on Linux is totally different. All those things are handled by a single program called a package manager. A package manager, like APT for Debian or pacman for Arch, is a command-line tool that hooks into trusted software repositories to automatically install and update apps. These apps are digitally signed, so you can be sure of the software integrity. You don’t need to manually track down and download a package, then click through an installer to load it onto your system. It’s all handled for you with an automated installation.
For example, you could search for the Firefox browser using the pacman package manager like so:
sudo pacman -Ss firefox
Find the exact package name of the app you’re trying to install, or if you know it already, skip the search and just directly type it as follows:
sudo pacman -S firefox
You can usually Google the exact package name if you can’t find it by searching the repos. Then you just press Enter, confirm the installation by pressing ‘Y,’ and pacman will immediately install the app for you.
On Debian you could use a command like this:
sudo apt install firefox
You could update the app using:
sudo apt update firefox
Also, you could remove the app with this command, which fully clears the app from your system without any leftover services or files.
sudo apt remove firefox
Windows has started to adopt similar package managers like Chocolatey and Winget but they’re not as powerful or widely supported.
There are other tools like Timeshift and terminal shells that I didn’t cover, but they are better than their Windows counterparts, and I believe the longer you use Linux tools, the more outdated Windows starts to feel.

