phetsims / john-travoltage

"John Travoltage" is an educational simulation in HTML5, by PhET Interactive Simulations.
http://phet.colorado.edu/en/simulation/john-travoltage
GNU General Public License v3.0
4 stars 8 forks source link

Design of the arm position announcements #222

Closed phet-steele closed 7 years ago

phet-steele commented 7 years ago

I have a concern about the decisions made for the arm's position and how they are announced to the user. I conducted a very informal "interview" (thanks @amanda-phet!) to get some fresh eyes on the current design. Here is how the sim behaves

I found a pretty big point of confusion for a potential new user:

I have one (or two) suggestions on how to remedy this:

  1. We add a new message to each position announcement that announces the delta of distance to/from the doorknob. To elaborate, the current pattern for a position announcement has two parts,

[Position #], [Current Distance] ex. "Position 68, close to the doorknob."

We could add a third part between the two,

[Position #], [Delta Distance], [Current Distance] ex. 'Position 68, moved farther from the doorknob, close to the doorknob."

This would be different depending on you previous position of course. If you started at position 67, the announcement would be as above. If you started at position 69 and decremented to 68, the delta would read "moved closer to the doorknob". This would give valuable distance feedback every single time a user presses an arrow key, instead of having to wait until eleven key presses later.

  1. This next idea seems less necessary, but I believe there is a standard for numerical positions where 0 is the starting point, or in our case the most significant point. Instead of mapping the position to [0, 100], we map it to [-50, 50] and place the doorknob at 0. This really just makes more sense in my head, but other than that I don't have a strong argument for this change.

I've written these two thoughts here without really knowing if these are reasonable changes. I'll leave that to the people who know more than me! I'm unsure how these changes would affect the leg. I also couldn't find any place where the current behaviour had been discussed and decided upon, so apologies if these idea have already been tried and rejected.

jobara commented 7 years ago

@jhung do you have any thoughts on this?

terracoda commented 7 years ago

@phet-steele, I am also concerned that there are two many positions for each description.

jhung commented 7 years ago

@phet-steele:

Re - Change number line to -50 to 50. I'm okay with this change. But I'm wondering as well if this will work okay with the current foot number system which is from 0 to 30 (not -15 to 15). My guess is that the foot numbers are okay, but I'd rather have some users try it out and report back.

Re - Reporting deltas in arm movement I can see the potential for confusion. I quite like your proposal to introduce a delta to the feedback. However, I share @terracoda's concern about too many positions being reported.

How about for hand movements, let's remove the reporting of the regions (but leave it in the general scene description). So the feedback would be like this:

So if moving in single increments you would hear:

If we change the number line to -50 / 50, the delta calculation will need to get adjusted appropriately.

phet-steele commented 7 years ago

@phet-steele, I am also concerned that there are two many positions for each description.

@terracoda are you suggesting the arm needs more granularity in it's descriptions (so maybe every 5 positions are given a different announcement instead of every 11 positions), or that we just need fewer positions? Like changing the range from [0, 100] to being [0, 50].....I guess both would accomplish the same thing anyway 😄.

emily-phet commented 7 years ago

I think we should definitely wait for @jhung to weigh in - he led the description design for this sim and has thought deeply about these issues. In the meantime, my initial thoughts are 1) I don't recall having a discussion about how it was decided how many increments there are to get around the full circle...decreasing this number may be reasonable. 2) I really like @phet-steele suggestion to add a delta indicator in the readout as the arm is moved. @jhung may have tried this and I don't recall, or may have decided against it - it could make the readout too verbose (people may just skip it then and miss the important info at the end). If this suggestion is considered, I would suggest adding "still" and "now" to the [current distance] readout, depending on whether or not it had changed from the previous readout. For example "Position 68, moved farther from the doorknob, still close to the doorknob."

jessegreenberg commented 7 years ago

How about for hand movements, let's remove the reporting of the regions (but leave it in the general scene description). So the feedback would be like this:

@jhung I really like this idea, what do you think @emily-phet?

terracoda commented 7 years ago

@jhung and @phet-steele, I am working on some feedback.

terracoda commented 7 years ago

@phet-steele, by "too many positions for each description" my concern was the same as yours. The user is pressing too many times before getting any indication of a change i.e., not enough feedback during an actual interaction.

terracoda commented 7 years ago

Sorry, for the late post and the long post. I have been thinknig about this all day. Trying to add as few progress phrases as possible, so as to affect the current design as little as possible.

Question 1 @jhung, are directional keys implemented as you designed it. I know you did user testing on which keys to make go up/down. Currently, Right and Up Arrows are counter-clockwise and Left and Down Arrows go clockwise? Is that correct?

@jhung, I like your idea of having region information in the scene summary. It might work to only have it there, but I found in Balloons and Static Electricity (BASE) interviews that some users wanted both progress and position information. Both, however, do no have to be spoken together all the time.

Announcing direction-progress info right after the position number change is likely very useful. Having the current distance or "region" last, means a fast interaction may skip that detail, and a slower interaction will get that detail. In either case, the student knows they are going in their intended direction, making progress, and if the region info is skipped, it's repeated in the summary when the student reviews information.

I like @phet-steele's idea of having three parameters, [Position #][Delta Distance][Current Distance], to achieve this, but I would call it [Delta Progress] not [Delta Distance] and [Current Region] not [Current Distance].

@phet-steele, I like the idea of having negative numbers, too, and the having the doorknob at zero, if @jhung is ok with that.

Question 2 Fewer actual positions on the slider may make things more engaging. @jhung, how do feel about reducing them to 61 (counting zero). I also made regions near zero smaller.

Note verb tense is important in interaction. I see it as describing "the now"; where the hand is, not where it was, a second ago. The past tense may be more relevant in the summary or on a discharge when you are describing what just happened.

Question 3 @jhung, I do not think, the verb, "moved" is necessary. How do you feel about dropping it, or at least changing it to "moves"?

Also, @jhung "On doorknob" cannot be used because John would be grounded if it was described like that. John never actually touches the dooknob. I suggest:

Question 4 I have a few suggested changes to the list of current regions (and I removed the). Do these sound reasonable?

Possible direction-progress-landmark phrases These phrases would only be part of slider decriptions. The regions would still be used in the summary descriptions, hopefully not causing many changes there.

My Reasoning

Walkthough with progress, landmarks and regions With these added phrases, things might sound like this.

Note Edits to original post:

emily-phet commented 7 years ago

@jessegreenberg How difficult would it be to implement @terracoda suggested changes? If it's not too difficult (e.g., on the order of an hour or less of time), we could implement these changes, and ask a few screen reader users we know to give it a try and get some informal feedback. I think that's what @jhung is hoping to do with any changes. Would any of these changes impact the prior testing that's been done, or could a quick check with the different screen readers suffice?

jessegreenberg commented 7 years ago

@emily-phet it seems like those changes could be made in 2-4 hours, with some additional time making modifications after feedback. We will use the same html/aria as we did before, I would not expect this to significantly impact prior AT testing that has been done. The sim will get full release candidate testing before release anyway. As for timing, the sim should probably begin RC testing by early next week in order to be released by May 1.

I would like to make sure I understand the requested changes, does the following list sum it up?

jessegreenberg commented 7 years ago

I am also curious if @jhung has any thoughts on https://github.com/phetsims/john-travoltage/issues/222#issuecomment-294003808 before proceeding, this would be a pretty significant change to description content from what has gone through user testing.

emily-phet commented 7 years ago

@jessegreenberg I agree, it would be helpful to get feedback from @jhung. After emailing him, I got an out of office reply that he will be unavailable until the 24th, so not sure if he will be able to comment before then. So we may need to proceed with what we think is reasonable until he returns.

Your list looks correct to me, except for the "Add some hysteresis..." subtask. I couldn't find where that idea was suggested. Since you'll cross into another region frequently, I'm not sure that this is needed. Can you clarify where this is described in the comments above, I may just be misunderstanding something.

jessegreenberg commented 7 years ago

Since you'll cross into another region frequently, I'm not sure that this is needed.

Good point, each region has only a few slider values, so it will be pretty simple. So we will add 'still' when the user stays in the same region without changing directions, or hitting a landmark.

So we may need to proceed with what we think is reasonable until he returns.

Understood, should I begin working on this?

jessegreenberg commented 7 years ago

@terracoda @jhung @jobara @emily-phet @phet-steele should the leg map from [-15, 15] instead of [ 0, 30] to match the arm?

jessegreenberg commented 7 years ago

For examples like this in the walkthroug:

Left/Down arrow, "Position -21. Far from doorknob." (Region) Left/Down arrow, "Position -22. Far from doorknob." (Region)

Left/Down arrow, "Position -6. Very close to doorknob." (Region) Left/Down arrow, "Position -7. Very close to doorknob." (Region)

Left/Down arrow, "Position 4. Just above doorknob." (Region) Left/Down arrow, "Position 3. Just above doorknob." (Region)

Why aren't we using progress indicator when moving through the same region? I am not really sure when to use the progress indicators.

jessegreenberg commented 7 years ago

Oh, in this case is 'Still' supposed to be read at the last number in a region, just before the region changes?

terracoda commented 7 years ago

@jessegreenberg, yes! Thanks for being so sharp with understanding the pseudo-logic.

The strategy with the progress markers (and landmarks) is to reduce repetition and provide orientation. Since regions further away from the doorknob have more slider values than the ones closer to the doorknob, the landmarks and the "Still" progress marker should be helpful to indicate where the student is, and that they are making progress. The "Still" progress marker is indeed only meant to show up on the last slider value in the region.

And of course, "At doorknob." doesn't need progress. A student just needs to know they are there.

One big question in my mind is whether the doorknob should be one value on the slider or be a little region (3 values) as I have it above. In @jhung's design, I couldn't tell if it had more than one value or not. It would be ideal to speak with @jhung about this, but as @emily-phet mentioned, he is unfortunately not immediately available.

Note, that I have only provided one direction. The phrases are direction dependent. Let me know if you need more examples.

jessegreenberg commented 7 years ago

Excellent, thanks for clarifying @terracoda! Sounds good.

One big question in my mind is whether the doorknob should be one value on the slider or be a little region (3 values) as I have it above

I am not sure what it should be, in the last version, "closest to the doorknob" had one value, but I have changed it to 3 with "at doorknob" as you have it above.

jessegreenberg commented 7 years ago

@terracoda @emily-phet @phet-steele here is a version with these changes and description strategy: http://www.colorado.edu/physics/phet/dev/html/john-travoltage/1.3.0-dev.22/john-travoltage_en.html

We could change the region ranges a bit if you think they don't quite fit.

What do people think?

emily-phet commented 7 years ago

@jessegreenberg Could you make a version with the visualized pdom?I have a really hard time tracking details in description with auditory info alone.

terracoda commented 7 years ago

@jessegreenberg, ok awesome! Here's some immediate feedback:

  1. Replace all instances of "further" with "farther". These words basically mean the same thing, but historically "further" was used for figurative distance such as, we need to discuss this idea further. "Farther" is for physical distance. Now-a-days, I think the terms are interchangeable, but we only need to use one.
  2. Now seeing where the hand is in relation to doorknob, I think a single value is better for "At doorknob."
  3. I hear each location twice. Just wondering if aria-describedby is being used, and if that is causing repetition?
  4. I like "Away from doorknob" as the directional cue opposite to "Towards doorknob". It provides a little more variety.
jessegreenberg commented 7 years ago

Sounds good @terracoda! No, no aria-describedby, just aria-valuetext. Did you notice repetition in dev.20 or is this a new bug?

jessegreenberg commented 7 years ago

Could you make a version with the visualized pdom?

That would be difficult for now, the description content is inline on the input elements and the PDOM visualization won't pick them up. That is an improvement we can make to the PDOM visualization soon.

For now I added "valueText" query parameter to see the value text in the sim, I will deploy a version after making the changes in https://github.com/phetsims/john-travoltage/issues/222#issuecomment-294386026.

terracoda commented 7 years ago

@jessegreenberg, sorry I noticed repetition in Version 22, the one you posted in https://github.com/phetsims/john-travoltage/issues/222#issuecomment-294377972.

Before that my testing on the sliders was pretty useless due to my lack of understanding how they worked with VO (see issue #228).

terracoda commented 7 years ago

@jessegreenberg and @emily-phet , I can provide an adjusted version of the regions with the doorknob as a single position.

I actually think that the "upper door frame" and "lower door frame" landmarks could actually be small regions, but I would really like @jhung's opinion on that. The "Close to doorknob" region seems kind of far off to be "close".

terracoda commented 7 years ago

All descriptions except the landmarks are relative, so it's just about how relative one wants to get (regarding last comment https://github.com/phetsims/john-travoltage/issues/222#issuecomment-294409272).

terracoda commented 7 years ago

The design works nicely, actually, with the landmarks as part of regions.

@jessegreenberg, @emily-phet, and @phet-steele I'm not exactly sure which value points for the landmarks on the slider should be. There is leeway, of course.

Since this sim actually needs to have refinement for experimentation near the doorknob what do you think of making the regions closer to the doorknob a little smaller?

If people like this iteration, note that the intermediate progress indicator is only needed regions with 4 values and no landmark, and regions with 7 values that include a landmark.

Summary of changes

New Walkthough with fewer intermediate progress indicators, landmarks and regions With these adjustments, the intermediate progress description are needed much less, only when there a region has 4 and no landmark and 7 when a landmark is present.

emily-phet commented 7 years ago

@jessegreenberg @terracoda Perhaps it would be best to have a quick meeting today about where the sim is at now, and final adjustments before RC testing. I'll send an email about this.

jessegreenberg commented 7 years ago

Sounds good to me @terracoda.

I hear each location twice. Just wondering if aria-describedby is being used, and if that is causing repetition?

I reproduced this on MacOS 10.12 Safari.

jessegreenberg commented 7 years ago

After a refresh, I only hear the value text once. Weird.

jessegreenberg commented 7 years ago

@emily-phet noticed that VO doesn't read the negative value in the value text.

jessegreenberg commented 7 years ago

I can see it in the VoiceOver readout, but VO doesn't say it.

jessegreenberg commented 7 years ago

Very weird: If a negative number comes after the word "Position", VO will not read the 'minus' sign if it is negative. If following most other words, VO reads as 'minus 9' for "-9". @emily-phet @terracoda, how should we handle this?

Here is an example outside of teh sim. In the paragraph VO, reads "Position: 10, will VO read the negative?" Fro a paragraph that looks like "Position -10: Will VO read the negative value?"

And it won't read the minus sign for any of the aria-valuetext.

Example

jessegreenberg commented 7 years ago

Actually, VO seems to skip the '-' for most words?

jessegreenberg commented 7 years ago

Even "-10: Will VO read the negative value?" is read as "10: Will VO read the negative value?" Gonna see what google has to offer.

jessegreenberg commented 7 years ago

VoiceOver settings strike again - there is a setting for reading punctuation and by default it is set to "some". Changing to "All" and VO reads minus signs as "dash".

Edit...but not in aria-valuetext.

jessegreenberg commented 7 years ago

@terracoda @emily-phet I can't think of anything else to do here, VO skips all punctuation in aria-valuetext as a feature.

emily-phet commented 7 years ago

@jessegreenberg I did a google search around the VO/negative number issue and it seems like using the Unicode character for minus sign addresses this issue with VO. Not sure if this works for the other screen readers. Wish we could add a +1 to the list of people probably wishing VoiceOver would just handle dashes before numbers simply.

I'm looking through the sim now and will update this issue soon regarding the list of final tweaks. Sorry VO decided to be the misbehaving screen reader of the day!

jessegreenberg commented 7 years ago

Ah, great, thanks @emily-phet! I will give it a try.

jessegreenberg commented 7 years ago

Thanks @emily-phet that works really well, VO reads "minus sign [value]".

emily-phet commented 7 years ago

@jessegreenberg After thinking about this for awhile, I think we may be overcomplicating things. I took @jhung original clock structure (60 ticks around the circle) and shortened it to 15. (-7 to 7, including 0).

Here's an image of this, with region and/or landmark descriptions. slide2

Here's a walk through, starting at the default position (-2), moving towards the doorknob, past it to one extreme end of the slider, the back all the way to the other extreme.

Default position: “Position -2. Not so close to doorknob. (Region) (no progress, since haven’t moved yet) Right/Up arrow: “Position -1. Closer, just above doorknob. (Progress and Region) (progress, since coming from not position 0) Right/Up arrow: “Position 0. At doorknob (Region) Right/Up arrow: “Position 1: Just below doorknob. (Region) (no progress, since coming from position 0) Right/Up arrow: “Position 2: Farther away, still close to doorknob. (Progress, Region) Right/Up arrow: “Position 3: Hand pointed at lower door frame, Not so close to doorknob. (Landmark, Region) Right/Up arrow: “Position 4: Hand pointed straight down. (Landmark) Right/Up arrow: “Position 5: Farther away, far from doorknob” (Progress and Region) Right/Up arrow: “Position 6: Very far from doorknob” (Region) Right/Up arrow: “Position 7: Hand pointing away, Farthest from doorknob” (Landmark and Region) Left/Up arrow: “Position 6: Very far from doorknob” (Region) Left/Up arrow: “Position 5: Closer, still far from doorknob” (Progress and Region) Left/Up arrow: “Position 4: Hand pointed straight down. (Landmark) Left/Up arrow: “Position 3: Hand pointed at lower door frame, Not so close to doorknob. (Landmark, Region) Left/Up arrow: “Position 2: Closer, close to doorknob. (Progress, Region) Left/Up arrow: “Position 1: Closer, Just below doorknob. (Progress, Region) (progress since coming from not position 0) Left/Up arrow: “Position 0. At doorknob (Region) Left/Up arrow: “Position -1.Just above doorknob. (Region) (no progress since coming from position 0) Left/Up arrow: “Position -2. Farther away, Not so close to doorknob. (Progress, Region) (progress now, since got here through slider movement) Left/Up arrow: “Position -3: Hand pointed at upper door frame, Not so close to doorknob. (Landmark, Region) Left/Up arrow: “Position -4: Hand pointed straight up. (Landmark) Left/Up arrow: “Position -5: Farther away, far from doorknob” (Progress and Region) Left/Up arrow: Position -6: Very far from doorknob” (Region) Left/Up arrow: “Position -7: Hand pointing away, Farthest from doorknob” (Landmark and Region)

emily-phet commented 7 years ago

Note on reasoning for this design:

emily-phet commented 7 years ago

@jessegreenberg Can you implement this variation? I'm sorry to spring this on you last minute, but I'd really like to give a simpler arm interaction a shot and see if it's workable.

emily-phet commented 7 years ago

Here's an updated leg interaction, also with [-7 to 7] range. Image includes labels, and new landmarks for either extreme end of slider. Note: when foot movig back behind John, the foot does not collect charges once the back of the shoe passes the outer plane of John's leg...so once the back of John's foot moves behind John's leg at all, descriptions should change to "Foot off rug".

slide5

Reasoning:

@terracoda @jessegreenberg Let's discuss this at tomorrow's noon meeting.

terracoda commented 7 years ago

@emily-phet, the foot is a half-circle, while the arm is a full circle. Do you think this should be reflected in the number of values on the sliders?

terracoda commented 7 years ago

@emily-phet, yes a unicode character makes total sense!

jessegreenberg commented 7 years ago

Sounds good @emily-phet, that is much more simple. If each region is essentially only one value, it seems like we should treat each region as a "landmark", and that would get that description every time we land on a value.

If each region has its own value, I can't figure out when to read off a "progress" indicator. It makes sense when relating to zero, but in the above walkthrough why do position 2 and position 5 have a progress indicators? Do certain values always get a progress indocator that is dependent on the direction of movement?

jessegreenberg commented 7 years ago

@emily-phet @terracoda a few language questions:

jessegreenberg commented 7 years ago

@emily-phet @terracoda @zepumph here is an initial version with the landmarks and smaller ranges of motion for for the arm/leg. This does not include any other changes but should give us an intial sense.

http://www.colorado.edu/physics/phet/dev/html/john-travoltage/1.3.0-dev.26/john-travoltage_en.html

The only problem I see is the lack of motion control (which was brought up in today's meeting). But a discharge will still occur at positions -2 through 2 depending on the charge. It is possible to pick up more than one charge per leg movement at this resolution.