RunestoneInteractive / RunestoneComponents

Packaging of the Runestone tools for publishing educational materials using github pages
http://runestoneinteractive.org
Other
101 stars 225 forks source link

Parsons Problems Bug (always says correct when trying after solving) #1145

Closed bhoffman0 closed 3 years ago

bhoffman0 commented 3 years ago

I think there's a new Parsons Problem bug. After you solve it once, students are trying different options without hitting reset and it always says correct no matter what you do after solving it once. I've been telling them to hit reset first, but I've gotten a couple emails about it, so it would be good to fix it so it checks it and removes the "you got it right message" if you try new things after solving. image

bnmnetp commented 3 years ago

Thanks Beryl, I haven't made any changes to parsons for weeks, and this looks like something that has been lurking for a long time.

There is a hasSolved flag that gets set to true as soon as the student gets the correct answer. If that flag is true no further grading is done.

@barbarer Do you think this is how it has always been? What should the correct behavior be? If a student moves a block once they have the correct answer should we reset the hasSolved flag? Should we freeze the code once they have the correct answer to force them to reset?

barbarer commented 3 years ago

I agree with Beryl that we should grade whatever the solution is.

bnmnetp commented 3 years ago

OK, I can make that change. The grader has logic that checks to see if this.hasSolved is true and if it is the grader just returns without grading again. Not sure why it was written that way but wanted to check.

bnmnetp commented 3 years ago

@barbarer There is a lot of logic built around the hasSolved flag. I'm not sure we want to just regrade.

What if we forced the student to use a reset if they wanted to try something else? Its seems to me that once the parsons problem is solved we can disable the ability to move the blocks or simply disable the Check Me button once solved correctly.

Given that there is only one correct answer I'm not sure what value there is in encouraging students to move the blocks around on a solved problem. ??

barbarer commented 3 years ago

I am also fine with forcing them to click the reset button if they want to solve it again.

Dr. Barbara Ericson Assistant Professor, School of Information University of Michigan

On Sat, Mar 13, 2021 at 5:22 PM Bradley Miller @.***> wrote:

@barbarer https://github.com/barbarer There is a lot of logic built around the hasSolved flag. I'm not sure we want to just regrade.

What if we forced the student to use a reset if they wanted to try something else? Its seems to me that once the parsons problem is solved we can disable the ability to move the blocks or simply disable the Check Me button once solved correctly.

Given that there is only one correct answer I'm not sure what value there is in encouraging students to move the blocks around on a solved problem. ??

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/RunestoneInteractive/RunestoneComponents/issues/1145#issuecomment-798794714, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKOZ7M2K6R7W7EA5VSLG4DDTDPJQPANCNFSM4YWZNUEQ .

bnmnetp commented 3 years ago

This is fixed. The check Me button is disabled after the student gets the correct answer. They can try other answers by using Reset.