WeBWorK Main Forum

Editing homework sets class-wide after they open

Editing homework sets class-wide after they open

by Sean Fitzpatrick -
Number of replies: 6
I think this is a new phenomenon, but I could be wrong:

Often after a homework set opens, I'll realize that I need to clarify an instruction, fix a bug in a problem, etc.

So I go to the homework sets editor, and make the change. At the top it'll tell me that changes affect ALL students. But this isn't exactly true.

Changes are only affecting students who have not yet accessed the problem I'm editing. If they've already accessed the problem -- even if they haven't submitted anything -- their user settings override the class settings, and the changes I make don't apply to them.

Is there a way to make changes and override user settings? I don't want to go one-by-one in a class of 200.
For example, I decided to set the weight of a problem to zero in a homework set, because it was a bit buggy. But the change didn't apply to anyone who had already opened that problem, which was most of the class.
In reply to Sean Fitzpatrick

Re: Editing homework sets class-wide after they open

by Danny Glin -
I've seen this behaviour in two different scenarios. One was fixed a long time ago so probably isn't the culprit. The second I can reproduce in my current WW 2.15 install.

For me this happens on problems where rerandomization is enabled. If a student has got to the point where a new version of the problem is generated, then it writes the details of the new version to the database, which appears as an override setting for that student. This is why global changes don't affect these students.

First off, are you using rerandomization (or perhaps another new feature which modifies problems after they are assigned)? If so, can you confirm whether the behaviour you're seeing happens after a student accesses a problem, or only after they have attempted a problem and got a new version? If we can nail down exactly when this happens then at the very least we can file a bug report so it's documented.

To answer your question, you can override user settings for multiple users at once using the Instructor Tools page (click on "Instructor Tools" in the menu on the left. Many people don't even know that this page exists). On that page, highlight all students on the left, then highlight the appropriate homework set on the right, then click "Edit one set for users" at the bottom. You are now making override changes to a group of individual students (in your case everyone). Note that any changes made this way will supersede any future changes made through the Homework Sets Editor, so tread carefully.

If your goal is to nullify a problematic question, the "Mark Correct" checkbox is an alternate approach which will work even on students with override settings. Checking "Mark Correct" and saving changes will give everyone in the class full credit for that question.
In reply to Danny Glin

Re: Editing homework sets class-wide after they open

by Sean Fitzpatrick -
Thanks Danny. I have rerandomization turned on, but I don't think that's the issue. For example, I viewed a question a student asked me about, and then edited the question to update the explanation.

A local copy was created as expected, but my account was still set to use the original after the chance. I had to uncheck the override in the individual user settings for it to take effect for me.

I admit that I haven't tried the instructor tools -- somehow I've overlooked that all this time! I'll give that a try.
In reply to Sean Fitzpatrick

Re: Editing homework sets class-wide after they open

by Danny Glin -
What version of WW are you running?

Also, do you have "Show Me Another" enabled in your course? This is another thing that could cause this behaviour.
In reply to Sean Fitzpatrick

Re: Editing homework sets class-wide after they open

by Sean Fitzpatrick -
This issue is continuing to cause trouble for us -- is anyone else encountering it?
One of my colleagues is planning to use WeBWorK for the first time in the Fall, with remote teaching being required.
She's getting frustrated over things like:
1. Create problem set.
2. View problems in set.
3. Decide to set different weights for some of the problems.
4. View again, and get confused as to why it still says "(1 point)" when you just set it to be worth 3.

In her case: the only "students" in the course are herself, and the admin account.
If I go in as admin and view the set, I see the correct weightings. But her user settings got locked to weight 1 on everything, so she can't see the changes.

We're on WeBWorK 2.15, reasonably up to date (I think I last pulled from GitHub about two weeks ago).
Rerandomization is turned on but achievements and Show Me Another are off.

The instructor did not attempt any of the problems in the set: she only viewed them.
So it's not the known issue of the database getting locked after rerandomization. Simply viewing a question is enough to prevent a user from seeing changes made in the homework sets editor after the view.

I think instructors will reasonably expect that if they make a change to a homework set, that change will apply to all users.
In reply to Sean Fitzpatrick

Re: Editing homework sets class-wide after they open

by Alex Jordan -

I went into a problem set on our server and changed a weight. When I reloaded, I could see the change in effect. Then I turned on rerandomization, imported a problem set, changed a weight. When I reloaded, I could see the change. So at least for now, I can't reproduce this. Can you give more details on exactly what happens in items 1 through 4? Such as what mechanism is she using to create the problem set (import, initialize in Library Browser, Create tab in Hmwk Sets Editor, etc.), and what mechanism is she using to change the weights (Set Details page, Instructor Tools, ...)?

It sounds like something is writing user values for the weights into her little slice of the database. And that shouldn't happen until an instructor has a need to set special exception user values for individual students.



In reply to Alex Jordan

Re: Editing homework sets class-wide after they open

by Sean Fitzpatrick -
Here is what I'm seeing:

With rerandomization turned on:

1. In Library Browser, create homework set, and add problems to it.
2. View problems -- not in homework sets editor, but actually view the problems as a student would: go to homework sets, click on newly created set, click on problems to view them.
3. In Homework Sets Editor, change the weights.
4. View problems again. Those you viewed will have the original weights. Those you did not view will have new weights.

With rerandomization turned off, I don't get the problem.

Maybe I have some old settings in my conf files that should have been updated?
What I am seeing is that with rerandomization turned on, simply viewing a problem in a homework set is enough for a user value to be set.