The Design of Software (CLOSED)

A public forum for discussing the design of software, from the user interface to the code architecture. Now closed.

The "Design of Software" discussion group has been merged with the main Joel on Software discussion group.

The archives will remain online indefinitely.

discoverability and drag and drop

Drag and drop and drop is a powerful and convenient mechanism for many UI actions and I use it extensively in my product. *But* drag and drop functions aren't as obvious to the user as menu/button based functions. If they don't read the documentation (and who does?) they might not work out the drag and drop function exists. So how to get around this?:

1. Offer a menu/button alternative (easier to find, but makes the UI more crowded and less slick).
2. 'Tip of the day' telling them that the drag and drop function exists (yuk).
3. Hint text on the UI informing prompting them to use drag and drop (yuk).
4. Tool tip/documentation/FAQ (they probably won't read it).

Something else? I would be interested to hear how others get around this.
Andy Brice Send private email
Tuesday, October 24, 2006
 
 
I don't like any of the options, but in an attempt to offer some constructive criticism, let me ask: why are you trying to highlight the drag and drop feature?

My experience has been that the drag and drop metaphor tends to be established by the operating system. For example, people who grew up using Linux style environments tend to disdain drag and drop. Mac users tend to assume everything is drag and droppable. Windows users? They do select things a lot, but I see very few of them actually dragging elements around.

Err...  specific examples that I've observed:

Windows users will typically select a block of text with the mouse, and then select the copy menu option with the mouse. A power user might use the control C shortcut. I've very rarely seen anyone do alt-F and then use the arrow keys to navigate to the edit submenu and select the copy command.

Mac users will typically select the text and then attempt to drag it to it's new location while holding down either the command or control key. I've very rarely seen them use the menu at all.

Linux users will almost exclusively use keyboard shortcuts to select the word and place it in the clipboard and then navigate to a new location.

The point being is that drag and drop is a learned behavior reinforced by the operating system. People who are used to the concept, will intuitively try it in your program. People who aren't, won't. And I'm not sure there's really any value in going to...  the Linux camp for example and saying, "Hey, did you know it works within this application but it may not work anywhere else?"
TheDavid
Tuesday, October 24, 2006
 
 
My application ships on both Windows and MacOSX.
Andy Brice Send private email
Tuesday, October 24, 2006
 
 
Yes and...?  :)

Point being, Mac users will probably already know about the feature and Windows users might not care. However, if people have explicitly requested the feature, that's a different subject.

After thinking about it - one possible solution is highlighting the possible destinations whenever you click on something. For example, if you click a chair, maybe you can graphically indicate that it can be moved to storage, moved to another table, moved up to the speaker's podium, etc etc by highlighting those destinations.

So you're not explicitly trying to teach them about dragging and dropping, but encouraging them to think in those terms (as opposed to cut and paste).
TheDavid
Tuesday, October 24, 2006
 
 
I don't see #3 as a big yuck.

"Classic" UI design has tended to present a 'bare' view of the data and actions with little hint as to how they work together.  Part of the "Web 2.0" (hate that phrase) UI direction seems integrate the data and the actions that can be performed on it, and when done well, it's very effective.  I see no reason why a desktop can't also do this.

my 2c
Mike S. Send private email
Tuesday, October 24, 2006
 
 
>one possible solution is highlighting the possible destinations whenever you click on something.

They can drag a guest from one group to any other in a tree/list view. Not sure that highlighting would be helpful in this case. Also it might get confused with selection.

I am leaning towards adding an 'Edit'|'Change group' menu item that puts up a dialog where you select the destination group.
Andy Brice Send private email
Tuesday, October 24, 2006
 
 
>I don't see #3 as a big yuck.

I am not averse to putting occasional textual hints in dialogs. But putting them on the main window seems wrong somehow. Screen real estate here is precious and the comment will be in your face forever.
Andy Brice Send private email
Tuesday, October 24, 2006
 
 
Andy,

Assuming that drag-and-drop is discoverable if they actually try it somewhere, and assuming that anything they can do with drag-and-drop, they can do another way as well, what's your reason for wanting to make it more obvious than that?

I'm assuming, of course, that there's more to it than "Gee whiz, I spent so long on this neat feature and now nobody uses it".  <g>
Kyralessa Send private email
Tuesday, October 24, 2006
 
 
>assuming that anything they can do with drag-and-drop, they can do another way as well

They can't, thats the problem. Drag and drop is currently the only way to move guests between groups.
Andy Brice Send private email
Tuesday, October 24, 2006
 
 
"They can't, thats the problem. Drag and drop is currently the only way to move guests between groups. "

Then that is a serious problem.
not an ms access guru
Tuesday, October 24, 2006
 
 
"I am leaning towards adding an 'Edit'|'Change group' menu item that puts up a dialog where you select the destination group. "

That sounds good. And put a little "tip" text on that dialog telling them that they can just drag and drop to do it easier next time.
not an ms access guru
Tuesday, October 24, 2006
 
 
"They can drag a guest from one group to any other in a tree/list view."

If there's a tree/list view, then the reasonable assumption is that it operates a lot like a file manager, including the cut, copy, paste, drag and drop options. The only constraint would be that you can't have two guests with the same name (excluding generic labels like "and guest").

I have not actually seen Perfect Plan, and it obviously doesn't work the way I originally anticipated - but it also obviously is selling and doing well and I would be very reluctant to change how things are being done unless there is a specific complaint.

In the context of this discussion, I would suggest implementing cut, copy and paste as ways alternative ways to move guests around, as opposed to trying to find a way to showcase the drag and drop feature.
TheDavid
Tuesday, October 24, 2006
 
 
>I would be very reluctant to change how things are being done unless there is a specific complaint.

I am continually trying to reduce the number of support emails I get. 'How do I move a guest between groups' is one of the more frequent questions at the moment. If I get 2+ emails asking me the same question I assume its the fault of the software/website and try to improve it.
Andy Brice Send private email
Tuesday, October 24, 2006
 
 
So the solution isn't to make more people aware that you can drag-and-drop, but to think of another way or two they can do it, so that people can use the method that's most intuitive.

When I move or copy a file in Windows Explorer, sometimes I use drag-and-drop.  But sometimes, especially if drag-and-drop is inconvenient, I prefer to use Control-C (or Control-X), Control-V.  It's good to have more than one option.
Kyralessa Send private email
Tuesday, October 24, 2006
 
 
In my apps, I'm starting to force the mouse to a position where a tool tip occurs.  I only do this twice.  Perhaps you could have help text that only shows up a time or two (user training) and then get it out of the way? 

Also, for a critical dialog feature that I don't want the user to miss, I'll flash it twice the very first time they see the dialog, and never again.  I've drawn attention to it--whether they read it (I assume they will after the blink) is then up to them.
Doug
Tuesday, October 24, 2006
 
 
Options other than drag'n'drop are virtually essential for users with vision or coordination issues. Not only is it legally required in some places for particular applications, but it's good manners to let people use your application even if they physically can't use a mouse - and you have to do that if you want their cash.

So menus and/or buttons are essential.

Otherwise, people know about drag'n'drop if they've used Windows or MacOS for more than 5 minutes, so make stuff look like it fits in to standard practises, be as liberal (and consistent) with drag'n'drop as you can, and people who care will find it.

Surely somewhere in the "why this is the bestest thing ever" marketing blurb you can have "Easily drag and drop to visually edit the seating plan" (or something intelligible/appropriate).

Also, mouse pointers help with "affordance" - changing from an arrow to a hand has a strong "pick up" connotation, and in some instances that's a useful unobtrusive indicator that things can be dragged.

Tuesday, October 24, 2006
 
 
I would usually tend to think of drag and drop between two different list as being a shortcut for cutting and pasting.

For your guest lists I would expect to be able to right click and select cut from a context menu, and then paste into the other list, and to have all the usual keyboard shortcuts for that available too.
AH Send private email
Tuesday, October 24, 2006
 
 
I've gone for a 'change group' item in the 'edit' menu that is also in the appropriate context menu (which brings up a dialog). Cut/copy/paste somehow doesn't feel 'right' - but I may revisit in future. Thanks for all your comments.
Andy Brice Send private email
Wednesday, October 25, 2006
 
 
When you do a cut/paste on a file in Windows Explorer, cutting the file makes the icon light and fuzzy, to symbolize that (1) this is the file you're moving, and (2) this is where it'll stay if you change your mind about cutting it.  "Cut" in Explorer doesn't actually delete the file; if you don't move it, it stays where it was.  Cut only marks it as able to be moved.

So if your app is usable by keyboard, maybe you could try something similar; on Cut, change the person's icon to indicate that he/she is being moved, and then actually perform the move on Paste.
Kyralessa Send private email
Wednesday, October 25, 2006
 
 
You might also look at how programs like Outlook implement this. If I right-click on an email I get the option to "Move to Folder..." which gives me another dialog for choosing the destination. You can also get to the same functionality through the "Edit->Move to Folder..." menu item. Of course, I can just drag and drop the email message into another folder too.

It sounds like this is what you have decided to implement anyway.
not an ms access guru
Wednesday, October 25, 2006
 
 
>It sounds like this is what you have decided to implement anyway.

Yes, very similar.
Andy Brice Send private email
Wednesday, October 25, 2006
 
 
Take a look at the 2nd screen shot here:

http://www.members.shaw.ca/AlbertKallal/Rides/Rides.html

I REALLY wanted to use drag and drop, but I actually force users to highlight, and then hit the move it button. It is somewhat less convent then d&d, but users don’t have to ask to figure it out….

Albert D. Kallal
Edmonton, Alberta Canada
kallal@msn.com
Albert D. Kallal Send private email
Wednesday, October 25, 2006
 
 
Albert,

Can you allow drag and drop as well? Not sure it would be any better in these circumstance though.

Ps/ You didn't ask for comments, but the icons in your app are pretty ugly. They rather spoil the look of it. They aren't even all the same size (e.g. the envelope in  http://www.members.shaw.ca/AlbertKallal/Rides/ride3.gif ).
Andy Brice Send private email
Thursday, October 26, 2006
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics
 
Powered by FogBugz