Many hardcore Linux users love tiling window managers meant to optimize screen space for productivity. But I’m fine with regular stacking window behavior. Here’s why.
I Don’t Need to Optimize Screen Space
Tiiling window managers have attracted dedicated Linux users because they offer keyboard-heavy workflows and maximize screen space. I can see the appeal of keeping my finger on the keyboard as a writer. The main reason that I stick with standard stacking window manager is that I’m not that obsessed with optimizing every last pixel. I tend to only have a few windows open, such as a terminal, browser, or Spotify.
Of those apps, I tend to focus on one at a time. While computers are good at multitasking, I would much rather concentrate on the task at hand. For these reasons, I prefer to visually reduce the focus on the other stuff that I might need to come back to. I can either keep the thing I’m working on at the top and click into another window when I need to.
A tiled window manager would probably just distract me with things that I could see and be tempted to jump to.
And how big a screen would I need? If I obsessively tiled all my windows, I would never have enough screen space. This is something that Rob Pike observed in a 1983 paper (PDF) on the Blit terminal at Bell Labs:
The screen is not big enough (no matter how big it might be). Therefore, windows must overlap. The desires for overlap and asynchronism led to the development of layers, an implementation of overlapping, asynchronously updated windows.
If the screen will never be big enough, there’s no need to run a tiling window manager. A standard stacking window manager might “waste” screen space, but does that even have to be “optimized” in the first place?
Like me, I’m sure more people would benefit from focusing on fewer things at a time
Virtual Desktops Help Organize Screen Space.
The development of virtual desktops makes overlapping windows more useful. I can group windows by task, such as the websites I need to refer to an article in their own browser windows, and any Linux programs I needed to refer to, and so on. This lessens the appeal of a tiling window manager. Virtual desktops are such a good idea that even Windows has them by default now.
The best thing about virtual desktops is that I can manage to avoid the clutter of multiple windows by dedicating virtual desktops to a certain task. It also cuts down on distractions. If I have to jump to another desktop when I’m working on an article to play a game or watch YouTube videos, I might decide to focus on my work. This way, virtual desktops can help cut down on distractions when I need to concentrate.
I Can Snap Windows on Most Desktops
There is one task where tiled windows make sense: comparing documents. When I have to look at things side-by-side, such as making sure a quote from a PDF or web page is accurate for an article I’m writing, a tiled layout is an obvious solution.
Fortunately, most desktops and window managers these days seem to realize this, letting me snap windows to fill part of the screen. I can snap windows into half or a quarter of the screen by dragging them to the sides or the corners. This lets me temporarily turn my stacking window manager into a tiling one.
The reality that most users will have to switch between the two modes has prompted tiling window manager developers to implement this feature. They’ve effectively turned their window managers into “hybrid” window managers that can switch between the two.
Snapping windows is yet another good idea that Microsoft seems to have borrowed.
I Don’t Need Tiling for Something I Do Rarely
As useful as tiling can be, it doesn’t make sense to me to run in a tiling mode for something that I only do for a small portion of my workflow. A standard desktop environment or window manager meets my needs for most of the things I do. It’s a classic example of 80% of the benefit coming from 20% of the effort.
This still illustrates one of the best features of Linux: that you can choose what works for you rather than some big company’s ideas of how user interfaces should work. Want to run a tiling window manager? Just fire up your package manager. Want to run just in the command line? You can do that too. Linux gives you room to experiment because the user interface is separate from the rest of the system, unlike with Windows or macOS.
Given how many features from Unix-like environments they implement, it seems even they are paying attention to what Linux users are doing with their environments.