johnwdubois / rezonator

Rezonator: Dynamics of human engagement
35 stars 2 forks source link

Rezonator feels broken in Read mode #529

Closed johnwdubois closed 4 years ago

johnwdubois commented 4 years ago

Background When a new user opens Rezonator in Read mode, and tries to do something (such as make a Track link, Rez link, Chunk, or Stack), Rezonator does nothing, and says nothing. This combination is problematic, because for a new user, it feels like Rezonator is broken.

In general, making Read mode “inert”, so that it doesn’t respond to user actions, is a good thing. Unfortunately, Rezonator doesn’t communicate this to the user very well. It’s important that the user:

To reproduce

  1. Start Rezonator, and open a .rez file. (By default you will be in Read mode.)
  2. Imagine you are a new user, who has seen what Rezonator can do, and now wants to try it out for themselves. Try making a Track chain, or a Rez chain, or a Chunk, or a Stack.
  3. What happens? Nothing. It’s discouraging, and confusing.

What to do When the user is in Read mode, but performs actions that look like user input for making Links or Stacks, etc, give them the option to change modes.

  1. For a user in Read mode, present a dialogue box that lets the user choose from several options, whenever they do the following:
    • when the user clicks on two words, one after another (i.e. after the 2nd word)
    • or, if that's too hard, simplify it: present the dialogue box as soon as the user clicks on just one word
      1. The dialogue box offers the following options, with radio buttons:
    • "You are in Read mode (read-only). To mark up the discourse data, switch to:"
    • ( ) "Track mode [t] (for tracking coreference between mentions)"
    • ( ) "Rez mode [r] (for marking resonance between words)"
    • ( ) "Stack mode [s] (for grouping lines into a multi-line discourse unit)"
    • ( ) "Cancel"
  2. Check for user input:
    • clicking on one of the radio buttons, or
    • typing t, r, s, c, or Escape
  3. Depending on which option the user chooses, do the following:
    • ( ) Track mode: (1) Change to Track mode, (2) highlight the Track button, (3) change the Nav window Tab to Track
    • ( ) Rez mode: (1) Change to Rez mode, (2) highlight the Rez button, (3) change the Nav window Tab to Rez
    • ( ) Stack mode: (1) Change to Rez mode, (2) change the Nav window Tab to Stack, (3) show a message explaining how to make Stacks.
    • ( ) If the user choose Cancel or ESCAPE, or clicks outside the box: Do nothing. (That is, the user remain in Read mode, and the dialogue box disappears.)
  4. Things that should trigger this dialogue box:
    • clicking on two words, one after another (or, if that's too hard, clicking on just one word)
    • dragging horizontally, as if to make a Chunk
    • dragging diagonally, as if to make QuickLinks
    • dragging vertically on the Speaker labels, as if to make a Stack
  5. The smart way to do this is basically to:
    • use the existing Rezonator scripts that detect user input for making Track links, Rez links, Chunks, Stacks etc.
    • test whether or not the user is in Read mode.
    • If the user is triggering a data markup input script while in Read mode, this should trigger the dialogue box above.
Georgio-Klironomos commented 4 years ago

A solution we'll try is a pop up near the Tool Pane, with pointers towards the tools.

johnwdubois commented 4 years ago
  1. The popup "hint" message is way too small and hard to notice - make it big, bold, blinking, and red.
  2. More important, it seems unconnected to the user's action. Make the pop-up appear near the user's action.
  3. Avoid the chatty tone (e.g. "Here's a hint!"). Make it informative: "You are in Read mode (read-only). To mark up your text, select one: Track mode (to mark coreference between mentions) Rez mode (to mark resonance between words)"

Note the line breaks ( 4 lines).

  1. Assume the new user doesn't know Track mode and Rez mode are, nor where the buttons are. You need to make two red arrows, pointing out the 2 buttons. They can blink in alternation. (Subtle, eh?)
  2. The message doesn't respond to actions on the speaker labels etc. (making a Stack). Fix this.
  3. The message goes away too soon: It stops popping up too soon. For now, let's make the trigger active every time a user clicks on a word etc. No sunset timer. Later we can tone this down a little.