Hacker News new | past | comments | ask | show | jobs | submit login

I entirely understand alxlaz's position, buy my solution was exactly sticking to better window managers (in terms of long term support). My workstation is Linux since '98 or '99, and since then I've used GNUstep for about a decade, then i3 and now sway (basically i3 for Wayland). I'm free from the breaking changes alxlaz describes.

I just checked, and GNUstep is pretty much alive. Even that change was caused by me wanting to try tiling window managers, not support failure.




Ah, I'm in a similar-ish boat, I use WindowMaker :). This isolates me from most, but definitely not all dubious changes. I've been down the tiling WM rabbit hole a while ago but it's just not for me, I like the mouse, I like icons...

It's a little unsettling that there are two ways to get a stable experience: using window manager from 1998 (OK, ok, WindowMaker is still maintained-ish, in fact a very tiny portion of the code written after 1998 is mine :-) ), or getting used to a workflow akin to that of Windows 1.01 (i.e. a tiling WM).

On the bright side, though, yeah, at least we have a choice!


KDE 4 was released in 2008 and has been stable and consistent for more than a decade. That predates Windows 7. So in the same time KDE has been consistent you’ve had had the migration from XP or Vista to Win7. Then Windows 8 and now Windows 10. They’ve all bought massive changes in the UI experience.

If you don’t like KDE then use LXCE or Enlightenment or any of the other Linux desktop environments that have been pretty static (and have been even longer than KDE).

So yeah, there actually is a lot of choice on Linux and not all of it looks dated.


Mate desktop has been fairly stable (the default green tinted icon set is gross but fixable). I switched to it after Ubuntu long term support, and Debian on my other computer dropped gnome 2. Just didn't like gnome 3 or unity. Cinnamon was okay but at the time was still coupled to the brain dead ideas the gnome team had been perusing at the time. I haven't checked it out recently enough to know if it had improved.


> (...) getting used to a workflow akin to that of Windows 1.01 (i.e. a tiling WM)

Not really, unless it's a tong-in-cheek remark. Tiling window managers use virtual desktops and programmable positioning of windows to produce a predictable layout. Windows 1.01 had neither of those.

Add muscle memory to it and, if you can endure the learning/customization curve, you get a very efficient window manager. Whenever I'm alt-tabbing in search of windows in Windows or OSX I feel I'm using old software.


It's tongue-in-cheek of course :). That being said, I did find tiling WMs to be very unwieldy on most screens. When I first went down the tiling WM rabbit hole, I was using a laptop with a 15" screen, and that was great. After a while I got a 27" monitor, though, and tiling became extremely annoying -- every window is now either too wide to be read comfortably and I end up padding the screen with useless xterms, or too small for contents to fit in any reasonable way.


Tiling window managers are a great way to fiddle with window arrangement LESS not more. Shoving terminal windows between other windows for spacing is spacebar heating. I3 has a branch with the feature required its called i3-gaps. This feature is on its way to becoming a part of mainline i3 but has been available for about 11 years now as a separate package.

https://github.com/Airblader/i3

The setting

    smart_gaps inverse_outer
Would give you a configurable empty border only when you have a singular window ensuring that the single window isn't so large as to be hard to read comfortably.

As far as windows being too small to read comfortably I'd advise you to place no more than 2-3 windows per workspace. For the benefit of those who don't use i3 workspaces are per monitor.

Given 2 monitors you can easily show 4-6 windows which is easily enough context for about any task.


So, like I said in my other reply: this was back when i3-gaps was pretty fresh. I don't recall the inverse_outer outer setting, and looking at the github repository, it looks like it was merged in 2018. I'm talking about something that happened like ten years ago :-).

As for this part:

> As far as windows being too small to read comfortably I'd advise you to place no more than 2-3 windows per workspace. For the benefit of those who don't use i3 workspaces are per monitor.

Yeah, this is pretty much where the fiddling comes from.

I don't want to use 2-3 windows per workspace. I sometimes have to work on a piece of code and have 8-10 PDFs open for it -- datasheets, reference guides, schematics and whatnot, at which I want to be able to look from time to time. Sometimes while I'm also looking at the code, sometimes in full-screen (because I'm looking at a big diagram). Sometimes I need to look at a part of a diagram while I'm looking at the code. So I need them to be in the same view as the code. All in all -- including specs, standards, the code window(s), a few xterms -- I easily have 12-15 windows open in order to work on one thing, and it's not really optional.

i3's tabbed view is sort of what I wanted for the PDFs but it's annoying that, if you want to switch to the right one using nothing but the keyboard, you have to go through all of them. You go back and forth, not to the Nth tab (or at least you couldn't back when I tried i3).

That's actually what I liked about ratpoison. Instead of trying to be smart, it just let me multiplex my screen, which is what I really wanted.

I could sort of bend my workflow around all this and, through a complicated set of chords, make use of the whole thing in a productive manner. However, it was anything but convenient. I'm way happier with a floating WM and do a lot less fiddling with the windows.


With herbstluftwm I address that issue by just doing a split; you don't necessarily need to put anything in a given pane, so it's possible to just resize the pane for the window about which you actually care, and ignore the unused space entirely.

Of course, I typically end up sticking a terminal or editor or chat window or music player or something in there anyway, because why not?


How are useless xterms different from uselessly used space for a simply centered window?

I have 2x4K monitors at home. Moving to i3 is the best thing that happened to me.


> How are useless xterms different from uselessly used space for a simply centered window?

You still have to open them and move them around, especially if you do change your layout eventually.

I actually didn't have that problem when I was using ratpoison, but some applications (looking at you, Eclipse...) don't really work with it. (I know about stumpwm, and I do know Common Lisp, but alas, we just don't get along too well). When I moved to i3, which is greedy with screen space, I actually wrote myself a couple of scripts to handle this situation "gracefully" (automatically pad the screen with empty X11 windows, automatically un-pad them when needed) and bound them to a couple of key combinations.

I mean it sort of worked but at one point I decided I want to spend more time doing fun/useful things and less time hacking on my window manager.


Why didn't you use gaps instead of empty windows? Instead of hours writing scripts you could have spent 10 seconds adding a few lines of config.


This was before i3-gaps was a thing, if that's what you're referring to.


notion is a bit like i3 but with fixed containers that don't disappear when they become empty: https://notionwm.net/

herbstluftwm also has containers something similar


Similarly, Xfce, LXDE, and MATE are all alive and well and haven't changed much in the last decade, either.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: