phetsims / molecules-and-light

"Molecules and Light" is an educational simulation in HTML5, by PhET Interactive Simulations.
GNU General Public License v3.0
2 stars 5 forks source link

Add "photon passes through" context response to slow motion #333

Closed terracoda closed 4 years ago

terracoda commented 4 years ago

In today's interview with our Voice Over consultant, @Matthew-Moore240 and @terracoda thought that the experience could be improved with a timed context response for molecule/light source combinations that will not result in an excitation.

This context response would be enabled for Slow speed only is selected. We think that when the sim is on Normal speed things happen fast enough that it is easier to deduce that no excitation is going to happen. On Step Forward, the pass-through is already described, so nothing would need to change there.

Can we accommodate one of the following timed context responses for Slow motion?

  1. On the 5th pass through, announce

    • {{lightSourceName}} photon passes through {{moleculeName}} molecule.
    • For example: "Microwave photon passes through Methane molecule."
  2. Optionally, a general response on the 5th pass through, announce:

    • "Photon passes through molecule."

After looking at our current implementation, option 1 is a string we already use, so I thought that might be the best option for implementation, but if option 2 is more straight forward, we could go with a general response.

Let's discuss at Tuesday's design meeting.

terracoda commented 4 years ago

Tagging @arouinfar, @BLFiedler, @jessegreenberg and @wandita that we will discuss these options at tomorrow's design meeting.

terracoda commented 4 years ago

@emily-phet, we discussed this issue at today's design meeting. @Matthew-Moore240 and I would like your input on whether you think it is necessary or not.

@Matthew-Moore240 and I wondering if it would be useful on Slow speed to add a pass-through response for light source and molecule pairs that have no chance of an excited state?

We often do not describe non-changing situations, but there are cases when we do, and we are wondering if this might be a possible good case.

If you look at a minutes Monday's session (00:16:45 - 00:17:45) and let us know what you think that would be helpful for me and @Matthew-Moore240

emily-phet commented 4 years ago

It makes sense to me that those utilizing the sim non-visually would benefit from having important non-actions (such as the case in this sim when the light does not interact at all with the selected molecule) described. This sets up a parallel situation of "selection molecule, attend to what's happening". In cases where the molecule interacts, in the first few photon emissions they'll hear indications of absorption, etc. and in cases where the molecule does not interact, they'll hear clear indications that no interaction is happening.

Considering learners who are blind or significantly visually impaired, it may be the case that hearing a lack of information (e.g., when there's no absorption event after awhile) could also be interpreted as a sim or AT issue, which could distract from the sim experience. So, another reason descriptions being proposed in this issue could be beneficial.

I'll let you all decide how best to proceed, but seems reasonable to add a "passes through" kind of indicator as listed above.

terracoda commented 4 years ago

@Matthew-Moore240, with @emily-phet 's comments, our initial thoughts, and my recent discussion with @jessegreenberg with how the model works, this is how I think we might proceed for adding a pass-though context response:

  1. Add a delayed or confirming context response to indicate explicitly a photon pass-through on both Normal and Slow speeds and in all cases.

    • We first discussed that this response would only happen on Slow speed and only for pairs that do not cause an excitation. But on re-thinking this context response I am not sure if there is a good reason for it not to happen on both Normal and Slow speed, and in all cases (i.e. all possible combinations of light source and molecule). It might simplify things to generalize the behaviour.
  2. Time the response to be after several consecutive pass-through events or after a certain amount of time where no excitation has happened (whichever makes most sense from an implementation perspective):

    • After the interview and in Tuesday's meeting we discussed having the response fire on the 4th or 5th or possibly 6th photon pass-through that results in no excitation.
    • @jessegreenberg explianed that according to the model, the number of uneventful pass-throughs is random. While it is unlikely that 5 pass-throughs would happen without an absorption, it is still possible. With that understanding in mind, I would recommend a minimum of 5 pass-throughs (or equivalent timing for that to happen on Normal and Slow speeds) before firing this context response. I'm thinking is, if we time it like this, this response could happen, in theory for any of the light source-molecule pairs. For pairs that will result in an excitation, the response would rarely happen. For pairs that will not result in an excitation, the response will always happen, but only if a learner waits long enough to hear it. I think this is a good general solution that would benefit the learners that need it most - the ones that are waiting for clarity or confirmation.
  3. The actual pass-through context response:

    1. For Normal speed:
      1. "Photon passes through molecule."
      2. "Photon passes."
    2. For Slow speed:
      1. "Photon passes through molecule."
      2. {{lightSourceName}} photon passes through {{moleculeName}} molecule.
        • For example: "Microwave photon passes through Methane molecule."

@Matthew-Moore240, assigning to you for review. Because we are late in the development process, I would choose Option 1 for Normal and Slow speeds. If @jessegreenberg confirms it is no extra work to implement other options, then it is up to you, so state your preference for Normal and Slow speed, and we can check with @jessegreenberg.

Matthew-Moore240 commented 4 years ago

Yeah this seems totally fine to me! Option 1 is good.

terracoda commented 4 years ago

@jessegreenberg, assigning over to you for feasibility of this general pass-through context response for Normal and Slow speed.

jessegreenberg commented 4 years ago

OK, ill go ahead and add this.

For pairs that will result in an excitation, the response would rarely happen. For pairs that will not result in an excitation, the response will always happen, but only if a learner waits long enough to hear it.

In the model, we know when a molecule will never absorb a photon of particular wavelength. @terracoda @Matthew-Moore240 would you like this response to ONLY happen if the photon will never be absorbed?

terracoda commented 4 years ago

In the model, we know when a molecule will never absorb a photon of particular wavelength. @terracoda @Matthew-Moore240 would you like this response to ONLY happen if the photon will never be absorbed?

@jessegreenberg, thank you for this clarification. That was our original thought, to have this response "to ONLY happen if the photon will never be absorbed."

I am really comfortable with that approach, and it means we could potentially adjust the timing, i.e., make it shorter than how I described it above.

Do you think you could plan implementation with a query parameter for the timing?

terracoda commented 4 years ago

Assigning back to you @jessegreenberg .

jessegreenberg commented 4 years ago

Do you think you could plan implementation with a query parameter for the timing?

For sure, ill add a query paramter.

jessegreenberg commented 4 years ago

OK, this is done. There is a query parameter to pay with the timing called ?passThroughCount. Default value is 5. You can test it by adding it to the end of the sim url. .../molecules-and-light/molecules-and-light_a11y_view.html?brand=phet&ea&passThroughCount=2

@terracoda @Matthew-Moore240 can you please try it out?

Just something I noticed while playing with it, is there any concern that this will indicate to the user that the "pass through" event is happening less frequently than it really?

terracoda commented 4 years ago

@jessegreenberg, asked:

Just something I noticed while playing with it, is there any concern that this will indicate to the user that the "pass through" event is happening less frequently than it really?

I have the same concern, @jessegreenberg how hard would it be to change the wording to indicate multiple photons, and change the verb tense to the present progressive:

When I reflect on the case of these "non-reactive" pairs, the situation we are describing is more continuous - it's more like in the "bending", "glowing", "stretching" situations. Photons are passing through.

@Matthew-Moore240 and @jessegreenberg, what do you think that change?

Edited to fix my terrible grammar.

terracoda commented 4 years ago

Otherwise, it sounds awesome to me.

terracoda commented 4 years ago

And I think 5 is a good number, especially on normal speed.

jessegreenberg commented 4 years ago

Yep, done in the above commits. I removed the query parameter ?passThroughCount, and it alerts after 5 pass through events.

@terracoda @Matthew-Moore240 back to you for review.

terracoda commented 4 years ago

@jessegreenberg, I think it sounds great! @Matthew-Moore240, I give you the honor of verifying and closing our last description design related issue. Please have a listen.

Matthew-Moore240 commented 4 years ago

It sounds awesome! Great job everyone!