Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Supported by

[solved] Provide feedback on exit

edited February 2015 in OpenSesame

Is it possible to have a feedback page display to a participant when they exit a study--when they hit the BACK button on an Android tablet or ESC on a keyboard?

I am running a study with multiple trials nested in multiple blocks. Participants may experience 1 or more blocks, the number is up to them. They can leave at any time. I want to provide feedback, but only once they are completely done with their participation. I do not want to provide feedback at the end of every trial or every block.

I'm trying to design a study to run in a children's museum. I want to a) provide feedback on performance to kids who participate, which supports the educational mission of conducting science in a museum, but at the same time I need to b) accommodate the fact that participants in a children's museum are likely to bail out of an experiment early (and unpredictably) and move on to something else.

Comments

  • edited 5:47AM

    Hi,

    This is a bit tricky, because the behaviour of the experiment after pressing escape is already defined in the source code of OpenSesame. Of course, you could change it if you like, but this might not be the easiest solution.

    Another option would be defining another "escape" key yourself, that will also close the experiment, but before you could make it present a sketchpad or whatever with the feedback. This has the disadvantage, that the kids have to remember not to press escape if they're done. Below there is a small code snippet, that describes the core of this idea. Of course you'd have to include your actual experiment into the while loop, to make it work like you want it to.

    from openexp.keyboard import keyboard
    from openexp.canvas import canvas
    
    keyb = keyboard(exp)
    cv = canvas(exp)
    
    while True:
        key, end_time = keyb.get_key()
        if key == 'k':
                    # this is generic code. You have to adapt to your specific xperiment
            sketchpad.prepare()
                    sketchpad.run()
                    self.sleep(time)
            exp.end()
    

    Finally, a third option is to call an external program (a shell, or a wordpad) that opens as soon as OpenSesame closes. You can write a python script to do it.

    I recommend the second or third option, but in the end it is your decision.

    Best,

    Eduard

    Buy Me A Coffee

  • edited 5:47AM

    Thank you!

Sign In or Register to comment.