Has the Development of Window Managers Slowed?
al3x asks: "When I first got into Linux nearly five years ago, the new releases of competing window managers (like Blackbox, Enlightenment, Sawfish, etc.) were a constant thrill, and great strides were made with every release. I can't count the number of nights spent trying to get that sexy new E build to work, and what fun it was! But these days, window manager development seems to be stagnating. The last stable release of Enlightenment is from last year. Sawfish hasn't done much of anything in months, nor has Blackbox. WindowMaker had a recent update, but not with any exciting new features (it is rock solid, however). Now, verging from the paths of window manager favoritism or "they haven't been updated because they just work," why has development in this arena slowed to a crawl, and what's on the horizon?"
Could it be possible that yet-another-window-manager, just isn't a particularly interesting project to work on any more?
We've had the pre-cambrian explosion, time for the mass extinction.
KDE today is as good as window manager as MS windows or Apple finder, Gnome is getting closer, WindowMaker is rock solid and is small and fast, as Kojima dreamt years ago.
Until someone comes with a unbelievable great idea, things will go slow for a while.
And since the window managers "market" (don't know if this word can be applied to open source) are stable now, only the best and most used WM (gnome, WindowMaker, KDE) sees any development.
What ? Me, worry ?
Perhaps because the economy sucks right now? I imagine more people are worried about their jobs and paying rent then developing a window manager that they aren't making any money off of (or very little)...
Either that or they are really busy watching pr0n...
I've been lurking on their devel mailing list (check out their project page) and E's progress has slowed because of the recent downturn the tech industry. Open source programmers need jobs too....
I've been following IceWM rather closely for the past year, and it's at 1.0.9 - released a week or so ago, IIRC.
Really, though, what features are there to add to window managers? If you add too many features, then you end up like Enlightenment, which IMO is more like a desktop environment than a window manager.
I don't know what the problem is. I am still pretty satisfied with fvwm2. And some features you don't get in. e.g. KDE. Like the virtual desktop (FvwmPager) with the individual desktops actually being next to each other. Great for very large windows! And the switching mechanism (hit the border with the mouse) rocks!
I don't need all these graphical, slow and unintuitive menues. I am completely satisfied if I can add the shortcuts I need in 5 minutes to the pop up menues and have all the desktop space for my own use.
And I don't want to redo customization all the time. Basically I have had the same Fvwm2 configuration for years, with only small modifications. That means I can find everything very fast, because I know where things are!
Most ACs are not even worth the keystrokes to insult them. Be generically insulted and ignored otherwise.
Hopefully.. there's only so much you can do with a window manager, and 50 different should be enough for everybody, so people can now work on improving desktop environments or applications.
...KDE & Gnome aren't window managers but desktop environnements.
And the finder is yet something else (I'll leave to
Mac users to explain exactly what that thing is). I
know this rebuttal is annoying but hey, can't compare
apple to orange as they say !
Go ahead, nail me as flamebait, but it is true.
The honeymoon with Linux is over. It hasn't changed the computing world. It hasn't made it to the desktop, nor has it changed the datacenter in any real way.
Windows XP has had more planning and forethought to it's User Interface than all Open Source windowmanagers COMBINED.
Most WMs suck.
If I want fast, TVWM
If I want stable, fvwm
If I want pretty, e
sawbox, alterstep, blackfish, kde, whatever has no use. If I want a desktop OS, I use windows. If I want a server, I use a real UNIX. Real UNIX already come with their own Desktop Environments. They work.
The reasons, I think, are twofold:
1) It's been done. You can find a window manager out there now that can do just about anything. There's not a lot of "Interesting" problem domain left.
2) There is no itch. My current window manager suits me fine. It does everything I want it to do. I don't really see the point of starting from scratch to code a new one. If I were going to fork a window manager, I'd start with the one that was closest to doing what I needed done.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
I hear over and over again this call to arms, "Design a desktop that makes sense. Don't just design one that looks and runs like Windows."
Well, what would that be, exactly? There are a few basic tennants of a GUI that appear similar on all platforms:
Text boxes
Combo boxes
Drop Down menus
Radio Buttons
Check Boxes
Scroll Bars
Buttons
Tab Panels
Icons
Shortcuts/Aliases
Start Menu/Apple Menu/KDE Menu/GNOME Menu
etc...
These are basic items that are the foundation of a GUI. Yet, when people implement these things we get the cries of, "That's just a poor man's Windows. Create what the users *want*!"
Well, what do the users want? Don't you think that Apple and Microsoft have invested quite large sums of money figuring out what the users want? Realistically, in this day and age, if you build a GUI that completely changes the paradigm of a desktop with items on it, folders, widgets, etc... you better have an idea that immediately resonates with everyone. Else it will look alien and nobody will use it.
So, why doesn't anyone ever list the items that would make a desktop that would be Linux's own? Isn't it about time for somebody to pony up with this grand vision, instead of just crowing about the fact that we should all be reaching for this mythic concept?
Really, what is it that we should be doing? Which path should we be taking to achieve this epiphany in UIs?
Well from what I can understand Enlightenment is becoming a desktop shell, I really look forward to that. E17 will be the most eye-candy anyone can expect within the next year or so. But then we have to look towards the next step and that is 3d window managers and the 3d hardware market finally getting something else besides 1st person perspective games.
Who wouldn't want to wear 3d glasses and some virtual gloves and be in an interface similar to the covert government chem lab programs. Imagine just picking up your hand with a glove on, and seeing your hand in a 3d world, taking the window and moving it with your hand, then looking down and typing into a floating keyboard or perhaps a standard keyboard which you can also see in this virtual world. I remember seeing something on the Discovery Channel about the chem labs in some secret place and all the VR they deal with. When those systems become mainstream we will all be blown away, I was blown away by seeing these chemists twisting around chemical structures in a virtual world and using the computer to figure out the effect of those certain chemicals on the brain, cells etc.. This stuff is mainly used for chemical projects and some of those "cool" black projects. Very sweet.
I tried. Twice. Both efforts failed, largely because people can't seem to look past Windows as the one and only example of how a UI should be done.
For the record, the last "real" desktop I ever used was AmigaDOS 3.1. Fast, elegant, simple, all-encompassing, good design, clearly understandable, flexible, extensible and neat. The closest thing i've been able to look like it is WindowMaker, and even WindowMaker doesn't quite have it right.
A windowmanager need not occupy anything more than a single slat at the top of every screen. Why the top? Simple. The human eye, in Western cultures, tracks diagonally from northwest to southeast whenever it encounters an image. The flow of information should conform to that--Its absolutely opposite in Windows, where the origin of an action begins in the southwest corner (the Start button) and traverses awkwardly northeast. By the way, dont whine about "Well, what about non-Western cultures??? Are we just going to leave them out???" because the answer is YES. Let them come up with their own design. We do it our way, they do it their way.
A book is a perfect example of a proper user interface that has undergone hundreds of years of refinement. The title is at the top, relevant information is in the corners, and the page (or screen, if you will) is dominated by the body of the data. UIs should follow this convention.
Suppose you want to do a simple action. Start a program. In Windows, there are no less than 7 or so ways to start a program. Sometimes its an icon. Sometimes in an icon in the Tray. Sometimes its an icon in the Quick Launch bar. Sometimes its in the task bar. Sometimes its in Explorer. Sometimes its in the Start Menu. Sometimes its in DOS. On, and on, and on, ad infinitum, ad stupiditum.
A computer's UI should look and react like a television set, where all the channels are nothing but top-down views of books. Each channel has a single line across the top. It shows memory usage on the left, a date-clock on the right, and a single [x] button to kill the whole fucking thing and drop down to console. The remaining 99% of the screen can be occupied with any number of windows. No Docks. No taskbars. no trays. No icons.
All programs that exist on the system can be listed in a single pull-down menu. Right-clicking anywhere on the backdrop of that "channel" (or workspace) will give you the option of selecting a program to launch from a menu. A single, authoritative way of launching a program, not 7 of them.
Suppose you want to delete some junk--Fine. You need a filemanager. Not a filemanager, a browser, a text editor, a Trashcan, and a "delete" command. The filemanager is listed no differently than any other program in the menu listed above. One way for all. If you dont like it, use another OS.
Those are just two simple little improvements that would simplify the task of using Linux with a GUI a hundredfold. More options don't always means more flexibility. More options ALWAYS mean more complexity, and more intimidation for first-time users.
What I basically described to you is AmigaDOS 3.1's appearance in a nutshell. Installation of new apps was a snap, and it all worked out of the box. Instead, Linux has two maddenly different standards that fight for the same square foot of turf and both look retarded in the process. Until that gets resolved, you and I are stuck.
Bowie J. Poag
until one body can take the linux kernel, the GNU tools, all the GPL'd libraries, xfree86, the apps you use, (/)etc and put them together in a way much more like MS does with the layers of windows and much unlike a modern distro, this is going to happen. nobody wants this though, sorry. geeks only for now.
Note to self: pasty-skinned programmers ought not stand in the Mojave desert for multiple hours. -- John Carmack
In the early 90's, there were many window managers, lots of hacking and configuring them, and at least I got bored with that and settled with one that did most of job right out of the box (mwm if anyone is interested--not free, but it worked). I liked gwm very much, but who wants to keep hacking a window manager with lisp--at least for me, emacs is enough.
Time passed by, and then there were lots of linux generation window managers. Sexier, very graphical, themable, what else. Again, boredom hit me and I settled with the one that did the job needed out of the box (kde if anyone is interested, and with the default theme when themes came out). But this time, it took far less my time than during the first iteration, remembering the pain and ultimate result, and knowing what I want from a window manager.
It least for me, window managers main function is to manage windows, and do it with resonable speed and predictability. No fancy graphics or animations, and not lots of customizations if I have to setup a new environment from scratch, thank you.
I presume that my attitude will continue and I am not even interested about new development unless someone can show some real innovation in this area. I don't care if it looks like Windows--I have never used it, so I have no feelings in this area. The idea is simple, to manage windows, and at least currently no one has figured out how to do it differently.
A window manager need not occupy any space on your screen. A window manager need only manage the windows on your screen - allow you to move them about and iconify them, give them titlebars, etcetera. If you want some special window with buttons, menus, icons, and so on, fine, but that's not a window manager, that's one of the things you put together with a window manager to make a "desktop environment".
And if you want such a special window, top or bottom is IMHO all wrong - it should be on the side. I want my application windows to have the whole screen height, but not the whole width. We've generally got portait-mode windows (like paper pages) on a landscape-mode monitors.
Tom Swiss | the infamous tms | my blog
You cannot wash away blood with blood
With the collapse of Eazel, and a new pessimism about linux for the desktop, I think linux UI doesn't neccesarily have a clear concept of where it wants to go from here. Gnome, KDE, a bunch of windows managers, they all work. There are incremental bug fixes, small changes, and important feature additions (anti-aliased text), but a whole new class of ui development probably requires a clear concept of what kind of user the software is targetting.
MacOS looks fucking cool, and they have a clear design concept. They're selling a consumer products computer, not a computer computer. It looks sweet, it goes fast, and ANYONE can use it. The quick start guide for an ibook is 4 color pictures.
The big change they made with OS X is that they made lots of really cool eye candy and put the whole gui on top of an industrial strength bsd unix base. They've succeeded in having a consumer products computer that is CAPABLE of supporting super user expert use.
The linux user is a completely different kind of user. Linux is used in a server market, specialized research computing, and super user geekware. Linux users need/want a functional, nice looking UI, and indeed I think linux UI surpasses windows handilly.
Open source distributed development has its advantages (lots of customizabiliy and options) but it makes a centralized design methadology hard. Things come together, but an organized UI development which links applications, windows manager, OS together etc.... appear hard.
There are tradeoffs in UI design. Powerful expert usage vs. easy for average user. Customizability vs. doing one thing well. The linux console is fantastically powerful, but incomprehensible for the average joe schmo computer user. Can linux really move out of the super user dept? Can it do so more than incrementally? I don't see Linux becoming an average desktop environment anytime in the near future (eg. I don't see linux having enough organization to do something at all like os x), but is it moving there? Does gui only need to be strong enough for server/workstation? The requirements for all these apps are different. Ok, I'll stop rambling.
Whereas objects are a convenient way for programmers to organize things, they are not a natural abstraction for an end user. Creating a UI model that matches the implementation model is almost always a mistake.
If a user wants to create a document, they should be able to "create a document", not "create an object which has document-specific properties".
A good example of a UI model that matches an implementation model is the UI for file systems. Lots of users that I know throw everything on their desktop because they can't handle understanding a file system. Furthermore, who's to say they're wrong or "messy" for doing it? Current day UIs for file systems suck because they directly reflect the implementation model instead of a model that users are more natural with (such as a document stack interface).
A bit late to the party, but these comments have 'gotten my goat' so to speak.
The majority of comments I hear from opensource/Linux people is 'choice is good', 'no choice is bad', 'I choose to do things in manner X', etc. However, having those choices in WM front ends apparently is NOT a good thing. Apparently we need just 'one' way of doing something (actually, I'm not all that opposed, if everyone would just write to that standard instead of bitching about it).
But... here we have an OS which is accused of being monolithic (Windows) yet it's also being criticized because there's more than one way to launch a program? So - if they lock you in to one method - it's bad. If you have choice - it's bad. Is this only because it's MS?
creation science book
The glorified stature of the window manager is an odd architectural quirk of X-Windows. X-Windows is fundamentally concerned about, well, windows, so the window manager was pretty much *the* only application that every X system was running. Consquently if you wanted to add some feature (say a virtual desktop pager), you tried to get it into the Window Manager, because the window manager was already always running.
This "window manager is everything" view is actually sort of primitive. Most advanced operating systems have turned the window manager into a really mundane implementational detail that even programmers hardly care about. BeOS, Windows, MacOS, etc.
I hope this trend continues to GNOME & KDE...and we see the disappearance of those insanely bloated window manager preference dialogues and see the window manager behaving like the submissive quiet little technical detail it should be (at least from a user's perspective). Check out Havoc's latest project "Metacity" for an example of a well behaved CrackFree(TM) window manager.
-Seth (gnome usability project lead)
OSX is not a good gui.
1 - dock icon areas do not extend to edge of dock.
2 - dock changes size and icons move as it gets used
3 - what if you don't like grey or blue? Maybe OSX.2 will have green and OSX.3 will have purple
4 - it has vi so when I go to the apple help and type in vi I expect to see at least something.
5 - stupid windowesque scroll bars - the scroll-bars were one of the things which NeXT got right for Steve's sake
6 - way too much eye-candy, at least I can not install Enlightenment.
OSX isn't unix wedded with mac, its unix buried under mac. If anything its BaCKstep.
'Welcome to Rivendell, Mr. Anderson...'
[blockquote]
Then ya look at some of the minimal ones, notably Blackbox and Sawfish, they both do what they were intended to do. new features aren't in the focus of some of the more minimalistic projects, so anything at this point is bug fixes.
[/blockquote]
Which brings up one of the big differences between Free software and Commercial software; Since there is no real revenue stream to maintain, there isn't a long string of marketing dictatated releases after the project reaches maturity. TeX is a notable example, freezing the features, and working towards bugs (and extending the version number towards Pi).
I'm sure everyone here has heard the "release early, release often" mantra/slogan which applies to the early part of the development process, but what universal wisdom about the back-side of the dev. process do we have? We can follow the steps of TeX (as it appears many window managers have), and be happy with a solid, stable program, or we can take the path of feature-bloat, and keep adding things because they're nifty. (Mozilla comes to mind..)
my sig's at the bottom of the page.
One of the reasons why there was such an abundance of windows managers a few years ago was that what they were doing were pushing boundries. Now that KDE/KWM has come out (& become standardised), it is so far ahead of what one or two programmers can do in a part-time project, that programmers simply aren't bothering. There is no reward for working on a new window manager because:
1) Hardly anybody nowadays is going to use it relative to the total Linux user-base anyway.
2) You think of it, it has been done already.
3) Even if you work a whole year full-time on it, KWM is still going to be better.
4) Interest in window managers has declined because pratically everyone with a WM is using either KWM or Sawfish.
5) Mac OSX & Windows guis are now much better than the plain Win95, & clunky old Mac guis. It makes any new WM seem not-as-good, and therefore more trivial.
6) With so many ppl running KDE, they're defaulted to KWM. Although KDE can be used with other window managers, KWM is tied in with KDE to the point that it is a big hassle to use anything else instead.