PennController for IBEX › Forums › Support › Trials are unintentionally skipped
- This topic has 4 replies, 2 voices, and was last updated 3 years, 4 months ago by Valerie.
-
AuthorPosts
-
June 8, 2021 at 1:02 pm #7044ValerieParticipant
Hi Jeremy,
I have an experiment in which I specify a sequence of trials:
Sequence( "preloadImages", "consent", "codename", "welcome", "instructions CPT 1", "CPT_Practice", "instructions CPT 2", randomize("CPT") , "break", "instructions AJT 1", "practice 1", "comment AJT practice 1", "practice 2", "comment AJT practice 2", "practice 3", "comment AJT practice 3", "practice 4", "comment AJT practice 4","instructions AJT 2", randomize("AJT"), "LBQ.Intro", "LBQ", "LBQ2", "LBQ3", "send", "code", "final" )
Everything works just fine up to
"LBQ.Intro"
. After the trial is completed, the results are sent to the server and the remaining trials “LBQ”, “LBQ2”, “LBQ3”, “code”, and “final” are skipped.Below is the code for the trials “LBQ.Intro”, “LBQ”, “LBQ2”, “LBQ3”, “send”, “code”, and “final” (I aplogize for the length, but I thought it might be helpful). Any idea why those trials might be skipped?
// This is the LBQ Intro + whether they know what the experiment was about. newTrial( "LBQ.Intro", defaultText .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-size", "1.2em") .print() , defaultTextInput .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") .print() , newText("<u><b>Language Background Questionnaire</b></u>") .center() .print() , newText("<p>This questionnaire is designed to give us a good understanding of you and your language background, among other things. The information you provide is confidential. Please fill in the information to the best of your ability. If there are items that do not apply to you, feel free to leave them blank.</p>") .print() , newText("<p>Do you have any ideas of what the experiment was about?</p>") .print() , newTextInput("Q1", "") .lines(0) .size(700, 200) .print() .log() , newCanvas("blankspace", 1500, 25) .print() , newButton("continue", "Continue") .center() .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") .print() .wait() ) // This is the LBQ. newTrial( "LBQ", defaultText .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-size", "1.2em") .print() , defaultTextInput .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") .print() , defaultDropDown .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") .print() , newText("<u><b>Language Background Questionnaire</b></u>") .center() .print() , newText("<p>Birth year:</p>") .print() , newTextInput("Q2", "") .lines(0) .size(200, 50) .print() .log() , newText("<p>Gender:</p>") .print() , newTextInput("Q3", "") .lines(0) .size(200, 50) .print() .log() , newText("<p>Racial or ethnic identity/identities:</p>") .print() , newTextInput("Q4", "") .lines(0) .size(200, 50) .print() .log() , newText("<p>Where were you born? Please list the country, state, and city and/or town.</p>") .print() , newTextInput("Q5", "") .lines(0) .size(200, 50) .print() .log() , newText("<p>Where did you grow up? Please list the country, state, and/or town. If you grew up in more than one place, please list all of them. If you have only one location, you can leave the others blank.</p>") .print() , newCanvas("Q6.Location1", 1500, 100) .settings.add( 0, 0, newText("line 1", "<u>Location 1</u>") ) .settings.add( 0, 25, newText("line 2", "Country") ) .settings.add( 0, 50, newTextInput("Country1" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 25, newText("line 2", "State") ) .settings.add( 175, 50, newTextInput("State1" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 25, newText("line 2", "City") ) .settings.add( 350, 50, newTextInput("City1" ,"") .size(150,50) .print() .log() ) .settings.add( 525, 25, newText("line 2", "Age Range") ) .settings.add( 525, 50, newTextInput("Age1" ,"") .size(150,50) .print() .log() ) .print() , newCanvas("Q6.Location2", 1500, 100) .settings.add( 0, 0, newText("line 1", "<p><u>Location 2</u></p>") ) .settings.add( 0, 40, newText("line 2", "Country") ) .settings.add( 0, 65, newTextInput("Country2" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 40, newText("line 2", "State") ) .settings.add( 175, 65, newTextInput("State2" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 40, newText("line 2", "City") ) .settings.add( 350, 65, newTextInput("City2" ,"") .size(150,50) .print() .log() ) .settings.add( 525, 40, newText("line 2", "Age Range") ) .settings.add( 525, 65, newTextInput("Age2" ,"") .size(150,50) .print() .log() ) .print() , newText("<p></p>") .print() , newCanvas("Q6.Location3", 1500, 100) .settings.add( 0, 0, newText("line 1", "<p><u>Location 3</u></p>") ) .settings.add( 0, 40, newText("line 2", "Country") ) .settings.add( 0, 65, newTextInput("Country3" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 40, newText("line 2", "State") ) .settings.add( 175, 65, newTextInput("State3" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 40, newText("line 2", "City") ) .settings.add( 350, 65, newTextInput("City3" ,"") .size(150,50) .print() .log() ) .settings.add( 525, 40, newText("line 2", "Age Range") ) .settings.add( 525, 65, newTextInput("Age3" ,"") .size(150,50) .print() .log() ) .print() , newText("<p></p>") .print() , newText("<p>What region did you most associate with while growing up?</p>") .print() , newTextInput("Q7", "") .lines(0) .size(700, 200) .print() .log() , newText("<p>What (if any) other regions of the US have you lived in? Please list the states and/or towns. Feel free to leave blanks, where applicable. </p>") .print() , newCanvas("Q8.Location1", 1500, 100) .settings.add( 0, 0, newText("line 1", "<u>Location 1</u>") ) .settings.add( 0, 25, newText("line 2", "State") ) .settings.add( 0, 50, newTextInput("State1" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 25, newText("line 2", "City") ) .settings.add( 175, 50, newTextInput("City1" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 25, newText("line 2", "Age Range") ) .settings.add( 350, 50, newTextInput("Age1" ,"") .size(150,50) .print() .log() ) .print() , newCanvas("Q8.Location2", 1500, 100) .settings.add( 0, 0, newText("line 1", "<p><u>Location 2</u></p>") ) .settings.add( 0, 40, newText("line 2", "State") ) .settings.add( 0, 65, newTextInput("State2" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 40, newText("line 2", "City") ) .settings.add( 175, 65, newTextInput("City2" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 40, newText("line 2", "Age Range") ) .settings.add( 350, 65, newTextInput("Age2" ,"") .size(150,50) .print() .log() ) .print() , newText("<p></p>") .print() , newCanvas("Q8.Location3", 1500, 100) .settings.add( 0, 0, newText("line 1", "<p><u>Location 3</u></p>") ) .settings.add( 0, 40, newText("line 2", "State") ) .settings.add( 0, 65, newTextInput("State3" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 40, newText("line 2", "City") ) .settings.add( 175, 65, newTextInput("City3" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 40, newText("line 2", "Age Range") ) .settings.add( 350, 65, newTextInput("Age3" ,"") .size(150,50) .print() .log() ) .print() , newText("<p></p>") .print() , newCanvas("Q8.Location4", 1500, 100) .settings.add( 0, 0, newText("line 1", "<p><u>Location 4</u></p>") ) .settings.add( 0, 40, newText("line 2", "State") ) .settings.add( 0, 65, newTextInput("State4" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 40, newText("line 2", "City") ) .settings.add( 175, 65, newTextInput("City4" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 40, newText("line 2", "Age Range") ) .settings.add( 350, 65, newTextInput("Age4" ,"") .size(150,50) .print() .log() ) .print() , newText("<p></p>") .print() , newCanvas("Q8.Location5", 1500, 100) .settings.add( 0, 0, newText("line 1", "<p><u>Location 5</u></p>") ) .settings.add( 0, 40, newText("line 2", "State") ) .settings.add( 0, 65, newTextInput("State5" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 40, newText("line 2", "City") ) .settings.add( 175, 65, newTextInput("City5" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 40, newText("line 2", "Age Range") ) .settings.add( 350, 65, newTextInput("Age5" ,"") .size(150,50) .print() .log() ) .print() , newText("<p></p>") .print() , newText("<p>Please indicate the highest level of education that you have completed:</p>") .print() , newDropDown("Q9", "Education Level") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") .add("Elementary School", "Middle School", "High School", "Some College", "College (BA/BS)", "Some Graduate School", "Graduate School (MA)", "Graduate School (PhD, MD, MJ)") .select("Elementary School") .print() .log() , newText("<p>What do you consider your native language(s)?</p>") .print() , newTextInput("Q10", "") .lines(0) .size(200, 50) .print() .log() , newText("<p>Have you ever been diagnosed with speech or hearing issues?</p>") .print() , newDropDown("Q11", "Speech or hearing issues") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") .add("Yes", "No") .select("No") .print() .log() , newText("<p>Which speech or hearing issues have you been diagnosed with? (If this does not apply to you, leave this blank.)</p>") .print() , newTextInput("Q12", "") .lines(0) .size(700, 200) .print() .log() , newText("<p>Please rate your abilities in the language(s) you know based on the categories below, on a scale of 1-5. A score of 1 is poor, 2 is limited, 3 is good, 4 is very good, and 5 is excellent. Feel free to leave blanks for anything that does not apply to you.</p>") .print() , newCanvas("Q13.Language1", 1500, 100) .settings.add( 0, 0, newText("line 1", "<u>Language 1</u>") ) .settings.add( 0, 25, newText("line 2", "Listening") ) .settings.add( 0, 50, newTextInput("Listening1" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 25, newText("line 2", "Speaking") ) .settings.add( 175, 50, newTextInput("Speaking1" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 25, newText("line 2", "Reading") ) .settings.add( 350, 50, newTextInput("Reading1" ,"") .size(150,50) .print() .log() ) .settings.add( 525, 25, newText("line 2", "Writing") ) .settings.add( 525, 50, newTextInput("Writing1" ,"") .size(150,50) .print() .log() ) .print() , newCanvas("Q13.Language2", 1500, 100) .settings.add( 0, 0, newText("line 1", "<p><u>Language 2</u></p>") ) .settings.add( 0, 40, newText("line 2", "Listening") ) .settings.add( 0, 65, newTextInput("Listening2" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 40, newText("line 2", "Speaking") ) .settings.add( 175, 65, newTextInput("Speaking2" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 40, newText("line 2", "Reading") ) .settings.add( 350, 65, newTextInput("Reading2" ,"") .size(150,50) .print() .log() ) .settings.add( 525, 40, newText("line 2", "Writing") ) .settings.add( 525, 65, newTextInput("Writing2" ,"") .size(150,50) .print() .log() ) .print() , newText("<p></p>") .print() , newCanvas("Q13.Language3", 1500, 100) .settings.add( 0, 0, newText("line 1", "<p><u>Language 3</u></p>") ) .settings.add( 0, 40, newText("line 2", "Listening") ) .settings.add( 0, 65, newTextInput("Listening3" ,"") .size(150,50) .print() .log() ) .settings.add( 175, 40, newText("line 2", "Speaking") ) .settings.add( 175, 65, newTextInput("Speaking3" ,"") .size(150,50) .print() .log() ) .settings.add( 350, 40, newText("line 2", "Reading") ) .settings.add( 350, 65, newTextInput("Reading3" ,"") .size(150,50) .print() .log() ) .settings.add( 525, 40, newText("line 2", "Writing") ) .settings.add( 525, 65, newTextInput("Writing3" ,"") .size(150,50) .print() .log() ) .print() , newText("<p></p>") .print() , newText("<p>Apart from where you live, are there cities or towns that you spend a lot of time in? If so, please list them here. If not, feel free to leave this blank.</p>") .print() , newTextInput("Q14", "") .lines(0) .size(700, 200) .print() .log() , newText("<p>Have you noticed differences between the way people from your region talk and the way other people talk? If so, what kind of differences have you noticed? If not, feel free to leave this blank.</p>") .print() , newTextInput("Q15", "") .lines(0) .size(700, 200) .print() .log() , newText("<p>Is there anything else you would like to tell us about your language background, or how you use language?</p>") .print() , newTextInput("Q16", "") .lines(0) .size(700, 200) .print() .log() , newCanvas("blankspace", 1500, 25) .print() , newButton("continue", "Continue") .center() .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") .print() .wait() ) //Judgments newTrial( "LBQ2" , defaultText .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-size", "1.2em") .print() , defaultTextInput .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") , defaultDropDown .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") , newText("<u><b>Language Background Questionnaire</b></u>") .center() .print() , newText("<p> Picture a situation where someone used to hate classical music but likes it now. Imagine them saying the following sentence: 'I listen to classical music anymore.' Indicate whether this sentence is: </p>") .print() , newText("question", "") , newDropDown("say", "a kind of sentence ...") .css("font-family", "Times New Roman") .css("font-size", "1.2em") .add("a kind of sentence you would definitely <b>say</b> in this situation", "a kind of sentence you might <b>say</b> in this situation", "a kind of sentence you would never <b>say</b> in this situation") .print() .log() .callback( self.test.selected("a kind of sentence you would never <b>say</b> in this situation") .success( getText("question").text("<p>How might you hear this same idea expressed instead?</p>") ) .failure( getText("question").text("<p>In what kinds of situations would you say something like this?</p>") ) ) .wait() , newCanvas("say", 1500, 100) .add( 0, 0, getText("question") ) .add( 0, 60, newTextInput("feedback", "") .size(400, 50)) .print() , newCanvas("blankspace", 1500, 25) .print() , newButton("continue", "Continue") .center() .css("font-family", "Times New Roman") .css("font-size", "1.2em") .print() .wait() ) //Judgments newTrial( "LBQ3" , defaultText .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-size", "1.2em") .print() , defaultTextInput .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") , defaultDropDown .settings.css("padding-left", "5px") .settings.css("padding-right", "5px") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") , newText("<u><b>Language Background Questionnaire</b></u>") .center() .print() , newText("<p> Picture a situation where someone used to hate classical music but likes it now. Imagine them saying the following sentence: 'I listen to classical music anymore.' Indicate whether this sentence is: </p>") .print() , newText("question", "") , newDropDown("hear", "a kind of sentence ...") .css("font-family", "Times New Roman") .css("font-size", "1.2em") .add("a kind of sentence you have <b>heard</b> often", "a kind of sentence you have <b>heard</b> occasionally", "a kind of sentence you have never <b>heard</b> before") .print() .log() .callback( self.test.selected("a kind of sentence you have never <b>heard</b> before") .success( getText("question").text("<p>How might you hear this same idea expressed instead?</p>") ) .failure( getText("question").text("<p>Where have you heard sentences like this?</p>") ) ) .wait() , newCanvas("hear", 1500, 100) .add( 0, 0, getText("question") ) .add( 0, 60, newTextInput("feedback", "") .size(400, 50)) .print() , newCanvas("blankspace", 1500, 25) .print() , newButton("continue", "Continue") .center() .css("font-family", "Times New Roman") .css("font-size", "1.2em") .print() .wait() ) // Now we send the results SendResults( "send" ) .setOption("countsForProgressBar", false) //End of experiment message and verification code newTrial( "code" , defaultText .settings.css("padding-left", "120px") .settings.css("padding-right", "120px") .settings.css("font-size", "1.2em") .print() , defaultHtml .settings.css("padding-left", "120px") .settings.css("padding-right", "120px") .settings.css("font-size", "1.2em") .print() , newButton("finish", "End experiment") .settings.css("font-family", "Times New Roman") .settings.css("font-size", "1.2em") .center() , newHtml("end", "End.html") .print() , getButton("finish") .print() .wait() ) .setOption("countsForProgressBar", false) //Final window newTrial( "final" , defaultText .settings.css("padding-left", "120px") .settings.css("padding-right", "120px") .settings.css("font-size", "1.2em") .print() , newText("<p><b>You may now exit the window.</b></p>") .center() .print() .wait() ) .setOption("countsForProgressBar", false)
Best,
ValerieJune 8, 2021 at 1:24 pm #7045JeremyKeymasterHi Valerie,
Do you mind sharing your project’s demonstration link, either here or at support@pcibex.net, so I can see the full code of your project (without having to paste it here) and troubleshoot it live?
Jeremy
June 8, 2021 at 1:30 pm #7046ValerieParticipantJune 8, 2021 at 1:45 pm #7047JeremyKeymasterThe first thing I did with my copy of your project was re-activating the Debug popup: by inspecting the Sequence tab, I saw that the last trial is LQB, which means that the other trials are not included at all, ie. they are not skipped upon runtime, they just fail to be created
The Debug window also indicated that your project is running PennController 1.8-dev, in which the
self
keyword that you use at lines 1197 and 1256 wasn’t defined yet (I was able to identify this specific problem by opening the browser’s web console in which I saw the message “self.test is undefined”)You can replace the first
self
withgetDropDown("say")
and the second one withgetDropDown("hear")
, or update your version of PennController (the latest version is here). If you choose to go with the latter, make sure you take another test-run of your experiment (with the debugger on—basically keep the debugger on until you are about to compensate your first participant) to check that nothing broke in the process. There shouldn’t be any major problems, but I sometimes bring aesthetic updates with new releasesJeremy
June 8, 2021 at 2:20 pm #7048ValerieParticipantHi Jeremy,
That makes sense! I was unaware that there were different versions of the PennController and I will leave the debugger on from now on until publication of the experiment.
Thanks for your help!
Best,
Valerie -
AuthorPosts
- You must be logged in to reply to this topic.