Difference between revisions of "Information for OPL Editors"

From WeBWorK_wiki
Jump to navigation Jump to search
Line 3: Line 3:
 
== Processing problems ==
 
== Processing problems ==
 
When new problems appear in a subject area, the appropriate editor should take the following steps.
 
When new problems appear in a subject area, the appropriate editor should take the following steps.
# Look at each problem in rendered form. If there are any obvious problems (e.g., it does not render, or it references a particular textbook page), then it is skipped.
+
# Look at each problem in rendered form. If there are any obvious problems (e.g., it does not render, or it references a particular textbook page), then it is rejected.
# Run the problem through the error detection script (which tests several seeds to see if the problem generates an error).
 
 
# Decide where the problem belongs in the OPL Taxonomy. If the problem has tags, it can help point you in the right direction, but the final decision is up to the editor.
 
# Decide where the problem belongs in the OPL Taxonomy. If the problem has tags, it can help point you in the right direction, but the final decision is up to the editor.
 
# Compare the problem to existing problems in that Subject/Chapter/Section:
 
# Compare the problem to existing problems in that Subject/Chapter/Section:
 
#* If the problem is essentially a duplicate of an existing problem, consider if one version is clearly better than the other.
 
#* If the problem is essentially a duplicate of an existing problem, consider if one version is clearly better than the other.
 
#**If the existing problem is just as good, keep it and reject the new problem.
 
#**If the existing problem is just as good, keep it and reject the new problem.
#**If the new one is better, copy it into the OPL, tag it, and make the existing problem a pointer to the new one.
+
#**If the new one is better, mark it as accepted and send a "keep-kill" note to the Editor in chief so that the new problem is kept and the old problem redirects to the new one.
 
#* If the problem is not a duplicate,
 
#* If the problem is not a duplicate,
#** Copy it into the OPL.
+
#** Mark it as accepted.
#** Set the Subject/Chapter/Section and level tags.
+
#** If necessary, set the Subject/Chapter/Section and level tags.
 
#** See if it belongs in a more-like-this group with existing problems. If so, tag it as such.
 
#** See if it belongs in a more-like-this group with existing problems. If so, tag it as such.
 
== Tools available ==
 
To help with the tasks above, editors have access to several shell scripts.
 
* keep-kill which takes to arguments on the command line which are paths to two WeBWorK problems. Keywords and textbook tags from the second file are merged into the first one, and then the second file is turned into a pointer to the first.
 
* checkProblem.pl takes the path to a single WeBWorK problem, and runs several tests on it.
 

Revision as of 15:12, 30 December 2014

The OPL Editors oversee inclusion of new problems to the Open Problem Library (OPL). When problems are contributed, they are put in the Contrib directory of the Open Problem Library. It then falls to the editorial board to review problems and decide if some/all of them should be copied into the OPL. Each editor is responsible for a particular portion of the OPL.

Processing problems

When new problems appear in a subject area, the appropriate editor should take the following steps.

  1. Look at each problem in rendered form. If there are any obvious problems (e.g., it does not render, or it references a particular textbook page), then it is rejected.
  2. Decide where the problem belongs in the OPL Taxonomy. If the problem has tags, it can help point you in the right direction, but the final decision is up to the editor.
  3. Compare the problem to existing problems in that Subject/Chapter/Section:
    • If the problem is essentially a duplicate of an existing problem, consider if one version is clearly better than the other.
      • If the existing problem is just as good, keep it and reject the new problem.
      • If the new one is better, mark it as accepted and send a "keep-kill" note to the Editor in chief so that the new problem is kept and the old problem redirects to the new one.
    • If the problem is not a duplicate,
      • Mark it as accepted.
      • If necessary, set the Subject/Chapter/Section and level tags.
      • See if it belongs in a more-like-this group with existing problems. If so, tag it as such.