2012/09/24

Desktop Environment Overview

In my thoughts about the desktop environment I said I'd go over my opinions on the various DE's out there.  So here that is.

Windows XP - Didn't have anything close to the modern start menu, and had the traditional active windows task-bar rather than a launcher, so besides a drag and drop quick-launch windows xp kind of sucked.

Windows Vista - Revealed the modern start menu and didn't change much else.  An improvement on XP, but was tremendously slower for absolutely no good reason.  The bigger close button was nice in the window manager, but mostly it was just re-skinning the same old.

Windows 7 -  The modern dock launcher bar was a vast improvement over the traditional active windows, and it kept the good start menu.  So best of the Windows systems.  There are a few drags - whenever you overflow the bar with icons, it doesn't do a vertical scroll but instead adds rows or columns depending on if you orient it horizontally or vertically.  Also, horizontal tray icons only occupy one row when they occupy two vertically (and vertical is just better imo, with modern screen resolutions making vertical space more precious than horizontal).

Windows 8 - You can't replace the start menu with a corner of the screen, that is unintuitive to the extreme and ruins UX.  The metro launch screen, while still supporting the system key -> type -> run behavior, is a separate graphical context and extremely slow on older hardware compared to the behavior of the classic start menu that didn't switch render engines.  Also, losing all your windows to look at a hodge podge of most viewed applications is ridiculous.  The new task manager is very nice though, wish they would back-port it to Windows 7 so I could use that.  Oh well, proprietary crap ftl.

OS9 - Can't comment much on it because I haven't used it in 6 years, but I remember it being very Windows 98-esque and didn't have preemption (eew).

OSX - The dock consumes way too much screen real-estate, and hiding it doesn't really help if you hit screen boundaries often.  Because it is only ever centered and always has way too much superfluous graphical cruft on it, it takes up more space than it needs to.  You can pin folders, but not arbitrary files, and it supports some context menu behavior, which is all good.  The real downside is the application bar on top of the screen - it wastes at least 12 pixels of vertical space for absolutely nothing when it only has tray icons and the menu bar on it.  The same issue arises with Unity.  There is no start menu here, and finder is a poor replacement, but disjointing the system administration into a special tray icon and system search is fine.  They really have nothing to do with each other.  They should still be full applications.

Unity - It has gotten better.  The launcher is an ok search menu, system administration is orthogonal like in OSX which is appropriate, the tray icons are on a stupid bar that consumes valuable vertical pixels but it has a lot of nice integrations (volume controls and dialogue popups, auto-updating, etc).  Recent crap like the Amazon integration breaks UX of the launcher because nobody wants their local search to pull from the Internet.

Cinnamon - The start menu here is great (besides its still a icon and text fixed dealio) but the active applications launcher is outdated.  If I could get a dock on Cinnamon, even with the fixed start menu / clock, I'd be placated if it supported arbitrary file dropping, mouse over contexts, and integrated controls.

Docky(?) - It isn't a full DE since it is just a screen dock for gnome.  But it has a lot of potential in how it has a lot of what I want - the orthogonal design of the panel from the start menu (albeit, docky doesn't even have one - the icon of Docky itself is forced on the bar for no good reason and you can already access all the same setings by right clicking on the dock anywhere that isn't an icon) which puts it out of the running.   By not being its own DE, you need to have something else running in a hidden state behind it, which might as well be LXDE to minimize resource strain.  It is a collection of good defaults with lots of configuration though, so I like the potential.

KDE4 - I have tried KDE a bit, but really - it has a splash screen indepndent of the OS just for the DE to start, it favors multiple attack vectors of window management in one context that makes it cumbersome, the start menu is ok but doesn't do dynamic search, it still uses active windows, but above all it is slow.  Which isn't good.  It also doesn't integrate with almost anything but the rest of the KDE software collection, but because they are trying to bite off more than they can chew vast swathes of the project suffer in the same way Gnome does.

XFCE4 - Many like XFCE, I am indifferent, mainly because it misses a lot of critical functionality.  It doesn't have a start menu with dynamic search and run contexts, it doesn't have drag and drop capability, it doesn't have hover contexts.

Xmonad - Xmonad is really off in space from the rest of the desktop space.  Tiling window managers have never been my thing, but it does its thing well - if I were a good neckbeard I would be all over this with a dozen terminals running as my everything, but I grew up on Windows 95 and remembering all the terminal commands is hard because my memory sucks.  It is great for productivity though, since it just maintains all the active windows and uses alt tab to the extreme to swap.

Android - For the luls.  Jelly Bean is really closing in on a more traditional desktop, with folders (even when they aren't folders?) web app launchers, etc.  It is still obtuse since you can't pin apps to the system menu that acts as a notifications bar, with the system keys of home / back / active apps (which is just a poor mans alt-tab).  The back button is a really nice feature - if it would behave like an application and revert behavior like the backspace key in a context, it would be neat on the typical desktop for users who really like clicking a lot.  We already have show desktop / home keys everywhere, though.  The rest of the black system bar is always wasted since it goes unoccupied, especially on larger devices.  I figure one day we might see an Android (or another OS on mobile) that allows a vast placement of buttons on some system locked bar a-la the panel / dock, with all kinds of dynamic behaviors.  On touch, though, it becomes hard to have mouseover contexts, which limits the potential.

Overall, I go between XFCE, Cinnamon with Docky, Unity, and Windows 7 depending on the way the wind blows.  They all have pros and cons but none quite does it for me.  Maybe I'll try working on a fork of Cinnamon with docky-like panel behavior.  My gripe there is that all of Gnome 3 uses javascript as its scripting backend, and I despise JS for its obtuse syntax and slowness over something like Python for more prettiness and C# / Java for more performance.

 Update Sept. 2013: I find this post hilarious on how heavily I changed my viewpoint. In discovering qt, I discovered KDE, and all my complaints are ammendable through configuration. Not to say their defaults don't suck, though. I'm hoping workspaces 2 and KDE 5 can introduce a better set of defaults to attract more people. Defaults matter!




No comments:

Post a Comment