A Tale of Two Interfaces

23
Oct
2006

Synergy, a mouse and keyboard sharing utility, has proven insanely useful to us users of multiple machines on a single desk. Think of it as a software KVM switch, but minus the “V” (for video.) You can arrange multiple machines side-by-side and Synergy seamlessly moves the mouse pointer and keyboard input from one machine to another at desktop boundaries. It’s a great idea and a great tool.

I use QuickSynergy on my PowerBook and Mac Mini, but later happened to look at the official GUI client on my friend’s Windows laptop. It’s not often that a user interface provokes a blog post on a Monday morning, but this was it.

Here are the screenshots:

QuickSynergy
On Mac OS X
Synergy
On Windows

QuickSynergy.png

QuickSynergy Client.png

QuickSynergy About.png

Synergy Main Screen.png

2. Synergy Configuration.png

3. Synergy Options.png

4. Synergy Hot Keys.png

5. Synergy Advanced Options.png

6. Synergy Auto Start.png

7. Synergy Info.png

8. Synergy Log.png

9. Synergy Running Test.png

10. Synergy Started.png

You will notice that QuickSynergy has exactly one dialog box (with two tabs, one to use when running as a server, and another when running as a client) plus one About dialog. Synergy has a total of 9 dialog boxes (plus one About dialog.) The question, I wish, the developers had asked themselves, was whether throwing in a dialog box for every single configurable parameter was the right thing to do. It seems like the UI Designer(s) simply gave up on trying to understand the users’ needs, and instead just threw everything out to the user: “here, now there’s a dialog box for every single line in the configuration file, go figure it all out.” In my opinion, that’s the designer shirking his or her responsibility of actually designing.

Synergy Relative Mouse Moves.png I wonder how many regular users would ever want to change some of the arcane options. And if there was a savvy user that wanted to, she could just edit the config file! Even as a Computer Science Ph.D. student, I have no idea what the “Relative Mouse Moves” option means, or why I should care about it. (If you say RTFM, that’s already the sign of a bad interface.)
QuickSynergy
On Mac OS X
Synergy
On Windows
QuickSynergy.png 2. Synergy Configuration.png

Notice how, in the configuration screen, QuickSynergy simply shows you one screen with four text fields on the four sides, whereas Synergy expects you to enter the positions as “Machine X is to Direction Y of Machine Z.” The first way is so much more natural, but guess why the Synergy implements the second way? Because the configuration file is written that way.

These are clearly two very different styles of GUI design (though I would strongly argue that a text field for editing a configuration file does not count as a “GUI”, it’s simply a command-line interface (CLI) inside a text field.) Quick Synergy puts the user first, and is designed to let the user work naturally with his/her mental model of a keyboard/mouse layout. Synergy starts from the configuration file and slaps on a UI on top of it. Thus, Quick Synergy comes closer to the user, while Synergy stays closer to the machine.

Synergy QuickSynergy Comparison.png

UI Design is not about letting users edit configuration files, it’s about letting them do what they started out to do. That a config file needs to be edited to make that happen is a side story.

9 Comments »

  1. very thoughtful post…. bahutek the Quicksynergy developer was a Mac user whereas the Synergy developer was a once upon a time DOS programmer! …what else can i say!

    Comment by Supriya — October 23, 2006 @ 1:26 pm

  2. thought this would be worth a read…. http://www.codinghorror.com/blog/archives/000734.html

    Comment by Supriya — November 29, 2006 @ 10:30 am

  3. honestly i was able to setup the regular app instantly and quicksynergy makes no sense to me

    Comment by ben — July 12, 2009 @ 9:35 am

  4. I basically wanted a Synergy client that would give an icon to place in the tray. This seemed like it, but the lack of configuration options was a bummer :(

    Comment by Hari Sundararajan — September 16, 2009 @ 11:52 pm

  5. Yes – the “…lack of configuration options…” was a bummer – but the big red hot icepick in the eye was the fact that there was no clear reference to the fact that the Execute button actually does 2 different things depending on which tab is selected. Allow me to be more accurate : There are TWO Execute buttons – of which their respective view does not change allowing the user to realize that what is being executed is completely different depending on which tab is active.

    That said, this is a wonderful program – no doubt. And I fully appreciate the effort it took to create and release unto the public such a thing. But the lack of control that the program allows for, and the obvious confusion for any new user stumbling through the system (including those that actually read the instructions), really forces its overall usability into question.

    I must offer – and I am not the dullest tool in the shed – that had it not been for someone else posting the discovery of the execute button changing as a result of the currently active tab, I would have STILL been beating my head against the wall. THAT is how bad I needed this functionality. The only thing I can come up with in my defense is the fact that when changing various configuration settings via multi-page config windows, they are typically designed with a ‘common’ Apply, Save, Submit, and/or Ok button. We have all been programmed by such options for years – across all GUI-based platforms. The Execute button changing as per the current active tab is simply NOT obvious. At least CrossLoop allows for a background color change that offers ‘hits’ to the end-user – those of us using the stuff – that different things will happen as a result of the page (tab) that is currently being shown.

    Now that I have it figured out here, certainly don’t change it for me. But think of the next person – and the next – and the next.

    Supriya (above) point out “…Quicksynergy developer was a Mac user whereas the Synergy developer was a once upon a time DOS programmer…”. If that is truly the case then looking at the 2 side-by-side makes a great deal of sense. It sure would be awesome if something that stands on the strengths of both could be contemplated and put forward. It sure seems, as with “all things Mac”, that, once more, the end result is just too dumbed down. The old argument still stands : “THERE ARE REASONS FOR MORE THAN ONE MOUSE BUTTON!” This is not an art project – it is about functionality and accessibility. If such can be accomplished by a cartoon – that is, through the likes of a GUI, then GREAT. Otherwise, give us a damn box to type things into so that we can move on and actually accomplish something.

    Sincerely and without hesitation,

    Max Laing, D. MP
    CEO / Project Development
    ActionCore, Inc.

    Comment by Max Laing, D. MP — December 14, 2009 @ 12:50 am

  6. I am today setting up (Quick)Synergy on a Ubuntu (Same program as on the Mac) computer after using it for months on Windows and I must say that as a server it almost completely lacks control, I find your blog post to be showing favouritism.

    The reason the Windows GUI has so many dialogue boxes is so that you can configure Synergy in any way you want without the hassles of trying to figure out how the configuration file has to be written. QuickSynergy only allows four computers to be configured whereas Synergy allows any number of computers to be configured in any arrangement desired, even multiple computer stacked on top of each other on one side if you want! Or you could go to a side any number of computers and at anytime gave going to the bottom or other side of one of those screens bring you back to your primary screen.

    I do not have any degrees but it is not rocket science to see that the windows client is much more feature packed.

    Comment by Richard — January 24, 2010 @ 11:29 am

  7. @Richard: It is true that there are more features in the Windows version. However, for an average user who just wants to plug in their laptop and have the desktop share its mouse and keyboard, do you really think that want to tell it whether to “use relative mouse moves”? I wrote my config from scratch, but what I’m doing in it could have been done just fine from quicksynergy.

    And for those of you complaining about the start button doing different things whether you’re in the client or server tab, what were they supposed to do? Magic themselves into your mind and detect what you’re trying to do? The way they have it set up is fine. If you want to put in separate Start Client and Start Server options at the bottom, then you go right ahead, but for the majority of us it’s understandable as it is.

    Comment by correnos — March 20, 2010 @ 2:42 pm

  8. I had planned to use QuickSynergy as the client and my Windows PC as the server. The only way I could figure out how to set Synergy up was with QuickSynergy as the server, as the Windows Synergy GUI was completely incomprehensible. It did, somehow, manage to workout that it was the client though. To its credit the Synergy Windows client has some good options, such as the “run on startup” and “run on login” options, but these are elements QuickSynergy doesn’t really need (there are other ways of doing that), especially if it’s the server. I’d definitely like to see a QuickSynergy for Windows, with it’s up-down-left-right GUI.

    Comment by Ben — May 23, 2010 @ 11:25 am

  9. I also figured, like a few others here, that having a GUI would be easier. But the opposite it true; the configuration file was much easier to set up than this app. Go figure.

    Comment by Luis — May 27, 2010 @ 12:24 pm

RSS feed for comments on this post.

Leave a comment

Bookmark and share using ...

Delicious Facebook Digg Google Friendfeed Stumbleupon Twitter Linked In