Who are the best UI/UX designers in the Linux community?
April 22, 2015 9:24 AM   Subscribe

Who are the best (most innovative, most polished, most competent) designers of user experiences on various Linux platforms? Similarly, what Linux-based programs or application do an excellent job on UI/UX?

In theory, I love open source; in practice, Apple's two operating systems are too damn well-refined for me to move away from. It's not just Apple itself (though Apple's pretty excellent): Apple attracts world-class designers like Panic, Loren Brichter, and a whole long slew of others, who — to my skewed perception — push the experience of using Apple-based products far beyond what any competitors offer. In particular, open source communities have a reputation for really spectacularly shitty UX. (I shudder at the Android apps I've used while helping relatives figure out their phones and tablets, though that might be another issue of confirmation bias — I know the iOS community well enough to know where to look for world-class design.)

So, I'm curious: who does the best UX/UI work in the Linux realm? Are there any mind-boggling holy-shit-this-is-wonderful programs or experiences? (By UI, by the way, I'm not necessarily referring to GUIs; if a shell environment is particularly delightful to use, I'd love to see that as well!) The snobbier your tastes are when showing me stuff, the better, but really anything that you enjoy using when you get to use it might be worth passing my way.

If you admire any particular designers, too, I would love to know their names and see their work! I tend to find it easier to get into individual craftspeople's oeuvres, since it helps me get a feel for their approach. Not sure how much of that there is in the community, but again: that's why I'm asking!
posted by rorgy to Computers & Internet (12 answers total) 13 users marked this as a favorite
The answers I want to give would break things down into a (really tired old) flame war so quickly that it isn't funny, but I appreciate your acknowledgment that user interface design can be about more than a super-polished GUI.

But I can't comment on a Unix user experience thread without a special shout-out to the pipe. The whole idea of a way to chain together a collection of single-purpose (or limited-purpose) programs to operate on a stream of data remains brilliantly useful for many, many tasks more than 4 decades after the OS's invention.
posted by Nerd of the North at 9:36 AM on April 22, 2015 [5 favorites]

Mike Kozlowski: Why Atom Can’t Replace Vim: Learning the lesson of vi (almost, but not quite, enough to make me switch from Emacs).
posted by straw at 9:48 AM on April 22, 2015 [1 favorite]

I might be showing my hand a bit much, at least as far as my function-over-frills leanings go, but Synaptic was the first Linux program that really wowed me. Apt-get gives you everything from the lowest-level libraries to desktop programs, available without needing to hunt around with a web browser, with all updates and dependencies handled automagically; Synaptic gives you all that with an extremely usable GUI and a powerful search feature.
posted by fifthrider at 9:51 AM on April 22, 2015 [1 favorite]

Response by poster: straw: Can I ask why you keep using emacs, then? This article seems to imply Vim does the big emacs thing nowadays, no?

(I switch between emacs, Sublime Text, and Coda at work, and the author of that piece is right: extensibility is use, but those atomic little commands sounds super neat.)
posted by rorgy at 9:53 AM on April 22, 2015

rorgy, I've switched editors maybe 4 times (Beagle Brother's Line Editor, the various WordStar compatible editors of the early PC era (ie: TurboPascal, etc), Brief/CRiSP, and Emacs (because CRiSP's licensing per CPU was ridiculous for a diverse mixed environment, $500 a seat was fine, $500 for Windows, Linux, Irix and.... yeah, the boss wasn't biting).

(Yeah, I've used VisualStudio and assorted word processors and whatever, but for my primary editing environment...)

Basically, composability is awesome, and I love the theory and elegance of that design, but my fingers are trained and I'd rather put those neurons into something else that'll expand my thinking in new ways. Like new language concepts.

But that brings me to: Have you read Larry Wall on linguistics and the design of Perl? Some interesting ideas there, even as I find myself veering away from Perl.
posted by straw at 10:14 AM on April 22, 2015

I think helm for emacs is an amazing work of at-your-finger-tips usability, something that should be extended to the entire operating system (which isn't that hard to imagine if, like me, emacs is basically your operating system). Midnight Commander is usually well regarded as a file manager.

For the most part, though, it seems like linux developers tend to imitate already existing interfaces from Windows or OS X or even older. Classic X11 applications written in raw X11 or in something like Xaw are not going to win any awards, nor is CDE (even if it makes me feel all warm and fuzzy by reminding me of my old SparcStation pizza box.)

One area to look into might be stuff like xmonad, which is really a rethink of the windowed user interface paradigm, completely removing the mouse from the equation. I like it. Is it great design? I dunno.
posted by dis_integration at 10:25 AM on April 22, 2015

As far as rockstar UI designers, maybe Rasterman? But whether or not Enlightenment should be considered great or really terrible design is a question for the flame wars to ponder.
posted by dis_integration at 10:33 AM on April 22, 2015

I think whoever was behind redirection operators should get some sort of lifetime award for this. Pure, elegant, and nearly invisible.
posted by oceanjesse at 2:37 PM on April 22, 2015 [1 favorite]

I'd like to nominate a few Linux utilities:

CtrlP for vim. I work in an extremely large codebase, and being able to fuzzy search for a file means that I can find a file in seconds.

Powerline. I haven't used it, but my friends rave about it.
posted by Adamsmasher at 9:41 PM on April 22, 2015

On the subject of emacs: Keyboard macros are a real treat. They take experience because you have to know how to use emacs well. They records keyboard input and can replay it. You can start with a buffer of lines and do something to each of them. Since with emacs you usually do everything through the keyboard, anything you can do with emacs can be recorded to a macro. Sounds not that exciting right? There must be screencasts out there of this stuff.

The kill buffer is great and so quick to use. Also marking regions is a lot better then the normal GUI shift-click-click dance, I hate anything that feels like a video game. Helm or IDO are great, as looking for things in menus or lists is a waste of time. Also, emacs has a back button like your browser, it's called the mark ring.

One of the greatest things about vi is that it forces you to think before you do anything, this might not seem like a feature but watch someone codding, and see how much they scroll around looking for things. The process when using vi is "Step 1: What do I want to find? Step 2: How to I use vi to find it? Step 3: 4 key strokes(no exaggeration) then it is found." While more GUI oriented editors also have sophisticated find features the process I see way too much is "Step 1: look at things on screen to see if any resemble what I'm looking for Step 2: if yes move mouse+click, if no make something else come up on screen and goto step 1" There is a vast difference in the mental state fostered by UI that puts images in front of you to accept/reject or one that forces think/plan/act.

After editors, shells are probably the other major UI that you might want to look into. You might be able to find interesting areas of exploration by looking at what features Zsh and Fish use for promotion. IPython is also interesting.

Perl one-liners are quite the UX. No other language goes as far as perl to make this work.

Sudo is an interesting solution.

If it is any help, the designers we are talking about here are Kernighan, Ritchie, (for redirect etc) Stallman (for emacs) and Wall (for perl).
posted by bdc34 at 9:34 AM on April 23, 2015 [1 favorite]

Intriguing question.

The best unix UX for me? Probably Debian or Ubuntu with byobu. I like apt's dependency management. I love the debian convention of config directories rather than monolithic config files, and byobu lets me keep my place and lets shuffle windows when working on a remote system.

The GUI experiences have always been mediocre. They seem to be getting better, but never enough for me to go "wow that's really nice, I wonder who is responsible for finally getting that right?"

Oh, and perl, YUCK :). What some people love about perl is pretty much why I hate it, and love python. Clarity over cleverness wins for me. It's lovely though that I can use things that people who love perl have created without having to know that its created in Perl.

I'd love a satisfying alternative to the Apple ecosystem, but I just don't see one. OSX gets me an excellent, refined, GUI UX that interoperates nicely with iOS devices with an excellent touch UX AND it lets me enjoy UNIXness, including SSH into linux servers.
posted by Good Brain at 12:15 PM on April 23, 2015

I know this isn't the opinion I'm "supposed" to have but I actually quite like Unity, the Gnome replacement in the latest versions of Ubuntu. Though at work, I use awesomewm. I love tiling window managers in general (I've used wmii, dwm, and XMonad as well), particularly because they scale well from a small amount of monitor space to a large amount of monitor space.

However, presently tiling WMs do tend to be very coder-y. dwm is an extreme example of this (to change a configuration setting, just edit a header file and recompile the program!), XMonad a lesser one (time to learn Haskell!). These are design decisions that make sense if you are going for something that is extremely lightweight (dwm, wmii) or an Emacs-y turtles-all-the-way-down approach (XMonad) and don't want to sacrifice power. If there was a powerful-enough tiling window manager in Unity, though, I would use that in a heartbeat, because writing my own (e.g.) battery-notification and power-regulation applet is not really what I want to be spending my time on, and I would prefer that kind of stuff to Just Work as much as possible while still being able to use the keyboard, not the mouse, for as much as possible.

Speaking of wmii, you might be intrigued by Bell Labs' Plan 9, which never saw particularly widespread adoption but had a number of very interesting design decisions (everything you need to interact with is treated like a file -- combine that with the powerful *NIX pipe NotN mentioned and you can see the possibilities).

As far as command line tools, tmux and vim together are really, really wonderful. I would say literally 99% of my work is done using those. There's also a vim plugin called "vimcom" that can also be used to talk to other programs, like R, which lately I find pretty indispensable.
posted by en forme de poire at 3:41 PM on April 28, 2015

« Older Are you familiar with realty practices in PA?   |   Do pregnant Japanese women eat sushi? Newer »
This thread is closed to new comments.