jspsych / experiment-demos

MIT License
2 stars 8 forks source link

Setup thoughts #6

Open steffejr opened 3 years ago

steffejr commented 3 years ago

I think each experiment should include two mandatory files which I describe below.

A README.md file for each task should include the following topics:

Experiment Name -Who wrote it

Background -About the task and important citations

Task Description

Results File Information

Stimuli

Modifiable Parameters

A SETUP.JS file I am using a JS file which contains variables for all of the modifiable text (Welcome, instructions, feedback) and parameters for the experiment. I like this approach because it separates everything someone would change for their own purposes from the code. This file could also be tagged with what language it is in "StroopSetup_EN.js" This would make it easier for others to translate the task for other languages.

pjkohler commented 3 years ago

I think this is great. Why not standardize setup.js and README.md file names, perhaps like: "experimentname_setup_LAN.js" and "experimentname_readme_LAN.js"? I assume we would use ISO-639-3 codes for language?

jodeleeuw commented 3 years ago

Just a quick note that it is a good idea to leave the README.md file name as README.md because then GitHub will render it as the default view in that folder when you navigate to it.

pjkohler commented 3 years ago

ah, got it. I've updated the instructions to reflect @steffejr's suggestions.

joshkenney commented 3 years ago

I second the setup file. I have mine labeled conf.js as it functions more like a configuration file.

In our lab, running online and internationally, we have many different versions of online consents in addition to the instructions controlled by a global configuration file. Is that an avenue you would like to pursue as well?

pjkohler commented 3 years ago

I think including consent forms would add bloat to the experiment files that would not necessarily be that helpful to other researchers, since they would need to acquire consent according to their own IRB protocols.

joshkenney commented 3 years ago

right, but wouldn't it be worth including a template in the spec?

Also - my experiment leverages the jQuery library. Where should that go in the tree?

pjkohler commented 3 years ago

I am worried about include too many files that are unrelated to the actual running of the experiment. I could see including an ultrasimple "consent-form template" as the first step in the experiment.

pjkohler commented 3 years ago

Suggestion: Require that 'override_safe_mode' is set to 'true' in jsPsych.init for each contribution. This would prevent beginners from encountering errors when attempting to run an experiment on their local machine.

jodeleeuw commented 3 years ago

@pjkohler We implemented the safe mode with the goal that beginners wouldn't encounter errors when it was set to false and that it should only be set to true if you know how to handle local files (e.g., run your own local dev server). What are you seeing that makes you want to set it to true?

pjkohler commented 3 years ago

ah, I saw a message in the inspector and I think I misunderstood the purpose of override_safe_mode. Scrap that suggestion.

Off-topic: Will leaving override_safe_mode as false also deal with issues with using jspsych-external-html to present a consent-form? I've had to override some browser setting to debug consent forms locally.

pjkohler commented 3 years ago

@steffejr: FYI, I just did some edits to the Stroop experiment to get in more in line with the standards we have proposed so far. I deleted the unneeded files and folder in the jspsych folder, changed the file names, and moved the images in to an assets subfolder. Now I realize that this may be a problem for cognition.run, which does not allow subfolders (as far as I can tell). I like having subfolders from an organizational point of view, but I want to make it easy to upload the experiment to cognition.run. What do you think?