Difference between revisions of "Authors"

From WeBWorK_wiki
Jump to navigation Jump to search
 
(28 intermediate revisions by 7 users not shown)
Line 1: Line 1:
 
==Templates==
 
==Templates==
 
Most people write problems starting from templates. Problems from the OPL can be modified to suit individual needs, or existing problem templates can be used to create new problems.
 
Most people write problems starting from templates. Problems from the OPL can be modified to suit individual needs, or existing problem templates can be used to create new problems.
* '''[[Problem Techniques]]''' This page lists templates for WeBWorK problems in alphabetical order. This collection of templates can also be accessed through the associated category page: [[:Category:Problem Techniques]]
 
  +
* '''[https://openwebwork.github.io/pg-docs/sample-problems/techniques.html Problem Techniques]''' listed alphabetically.
  +
* '''[[Problem Techniques]]''' This page lists old templates for WeBWorK problems in alphabetical order. ''The problems on this link are out of date and should only be accessed for historical reasons.''
 
* '''[[:Category:Subject Area Templates|Subject Area Templates]]''' Some may find it useful to use this page where templates are ordered by subject area.
 
* '''[[:Category:Subject Area Templates|Subject Area Templates]]''' Some may find it useful to use this page where templates are ordered by subject area.
* '''[[:Category:Sample_Problems|Sample_Problems]]''' A third page with a collection of templates is this page of sample problems.
+
* '''[[:Category:Sample_Problems|Sample_Problems]]''' A third page with a collection of templates is this page of sample problems. These are very basic examples that illustrate the structure of a WeBWorK problem.
   
 
==Basic Information==
 
==Basic Information==
WeBWorK problems should be written with the use of MathObjects. Most of the templates mentioned above will include the MathObject Macros (recognizable by the line "MathObjects.pl" in the LoadMacros section of the code). For those who would like to read up on the basics of coding problems the following pages are recommended:
 
  +
WeBWorK problems should be written with the use of MathObjects, PG and PGML. MathObjects package things like numbers, vectors, matrices, etc., into a convenient form that controls formatting and includes an answer checker. PG provides many macros that generate random numbers, graphics, compute statistical distributions, etc. PGML gives authors finer control over a problem's display, and helps organize code in a way that is easy to maintain. Many older problems were written without PGML. Some were written without MathObjects, but that practice is now strongly discouraged except in very specific circumstances.
* '''[[Problem Authoring Background Information]]''' This article includes a PG language overview, some comments about editing problems and ensuring server access.
 
* '''[[SampleProblem4 |PGML]]''' (Template 4) shows the standard outline of a problem, which includes a ''tagging and description section'', ''an initialization section'', ''a problem set-up section'', ''a text section'', and optional ''answer and solution sections''.
 
* See '''[[:Category:MathObjects|MathObjects]]''' for more information on authoring problems using MathObjects. For a quick reference see '''[[MathObjects reference table]]'''.
 
* '''[[Introduction to Contexts]]''' Using Numeric, Complex, Vector, Matrix, and Interval context in problems.
 
* '''[[Reduction rules for MathObject Formulas]]''' Includes a table of ''The Reduction Rules and their Actions''.
 
* See '''[[ PGLabs]]''' to try out code fragments on line -- including code fragments containing MathObjects. This is a quick way to learn the fine points of the MathObject syntax.
 
* '''[https://testcourses.webwork.maa.org/webwork2/PREP13_Problem_Authoring/Workshop2_AM/ Davide Cervone's presentation to PREP, June 11, 2013]''' use guest login to view
 
   
== Reference documents and manuals ==
 
  +
Most of the templates mentioned above use MathObjects, and many use PGML macros -- look for "MathObjects.pl" and "PGML.pl" in the LoadMacros section of the code. For learning the basics of coding problems the following pages are recommended:
* [[:Category:Applets|'''Applets''']], how to embed Flash and Java applets into WeBWorK questions.
 
  +
* '''[[Problem Authoring Background Information]]''' -- includes a PG language overview, some comments about editing problems and ensuring server access.
* '''[[SequentialProblems]]''' revealing the problem one step at a time
 
  +
* '''[[:Category:MathObjects|MathObjects]]''' -- information on authoring problems using MathObjects.
* '''[http://webwork.maa.org/pod/pg_TRUNK/ POD]''' -- POD = "plain old documentation" -- original documentation embedded in the code files -- this is the place to find the most complete and most technical description of macro behaviors.
 
  +
* '''[[:Category:PGML|PGML]]''' -- information on authoring problem using the PGML markup language.
  +
* '''[[PGLabs|PG-Labs]]''' -- try out code fragments on line including code fragments containing MathObjects and PGML. This is a quick way to learn the fine points of the MathObject and PGML syntax.
  +
  +
==Tutorials==
  +
  +
* '''[[Learning How to Author Problems]]'''
  +
* '''[[Writing Your Own Homework Problems Using PGML]]'''
 
* '''[[:File:WeBWorK_Problem_Authoring_Tutorial.pdf| WeBWorK Problem Authoring Tutorial]]''' aimed at people who already know TeX, but need to learn about Perl, PG, and MathObjects (pdf file).
 
* '''[[:File:WeBWorK_Problem_Authoring_Tutorial.pdf| WeBWorK Problem Authoring Tutorial]]''' aimed at people who already know TeX, but need to learn about Perl, PG, and MathObjects (pdf file).
* '''[[Customize_Course|Customize Course]]''' This page includes a bit of code that allows student to obtain a new version of a problem.
 
  +
* '''[[University of Lethbridge programming examples and libraries]]'''
* '''[[TrainingAuthors |Notes on training authors]]''', and suggestions for further documentation-- Sam Hathaway
 
  +
* '''[https://demo.webwork.rochester.edu/webwork2/2017_Davide_Cervone_PREP_course PREP 2017 WeBWorK Problem Authoring Workshop]''' text, some exercises. Use the '''Guest Login'''.
* The Good Questions project at Cornell University [http://www.math.cornell.edu/~GoodQuestions/]
 
  +
* '''[[Problem Authoring Videos]]''', recordings from the PREP 2015 Problem Authoring Workshop.
* '''[[Converting CAPA problems for use with WeBWorK]]''' (This article has been retained as a historical document.)
 
   
  +
== Reference documents and manuals ==
  +
  +
* '''[https://webwork.maa.org/pod POD]''' -- POD = "plain old documentation" -- original documentation embedded in the code files -- this is the place to find the most complete and most technical description of macro behaviors.
  +
* '''[[TrainingAuthors |Notes on training authors]]''', and suggestions for further documentation-- Sam Hathaway
  +
* '''[http://pi.math.cornell.edu/~GoodQuestions/ The Good Questions project at Cornell University]'''
   
==Other==
 
{|width = "100%" align="center"
 
|style="width: 33%; border-width: 0px;"|{{projectline|Developers | Developers | Become a WeBWorK Developer |echo-ambass-48px.png}}
 
|style="width: 33%; border-width: 0px;"|{{projectline|Contributors|Contributors|WeBWorK Contributors - join us! [http://webwork.maa.org/planet (blog posts)]|gartoon-credits-48px.png}}
 
|-
 
|style="width: 33%; border-width: 0px;"|{{projectline|Learning How to Author Problems | Learning How to Author Problems | Various tools and tricks for writing problems |echo-ambass-48px.png}}
 
|}
 
   
 
[[Category:Authors]]
 
[[Category:Authors]]

Latest revision as of 09:01, 28 June 2023

Templates

Most people write problems starting from templates. Problems from the OPL can be modified to suit individual needs, or existing problem templates can be used to create new problems.

  • Problem Techniques listed alphabetically.
  • Problem Techniques This page lists old templates for WeBWorK problems in alphabetical order. The problems on this link are out of date and should only be accessed for historical reasons.
  • Subject Area Templates Some may find it useful to use this page where templates are ordered by subject area.
  • Sample_Problems A third page with a collection of templates is this page of sample problems. These are very basic examples that illustrate the structure of a WeBWorK problem.

Basic Information

WeBWorK problems should be written with the use of MathObjects, PG and PGML. MathObjects package things like numbers, vectors, matrices, etc., into a convenient form that controls formatting and includes an answer checker. PG provides many macros that generate random numbers, graphics, compute statistical distributions, etc. PGML gives authors finer control over a problem's display, and helps organize code in a way that is easy to maintain. Many older problems were written without PGML. Some were written without MathObjects, but that practice is now strongly discouraged except in very specific circumstances.

Most of the templates mentioned above use MathObjects, and many use PGML macros -- look for "MathObjects.pl" and "PGML.pl" in the LoadMacros section of the code. For learning the basics of coding problems the following pages are recommended:

  • Problem Authoring Background Information -- includes a PG language overview, some comments about editing problems and ensuring server access.
  • MathObjects -- information on authoring problems using MathObjects.
  • PGML -- information on authoring problem using the PGML markup language.
  • PG-Labs -- try out code fragments on line including code fragments containing MathObjects and PGML. This is a quick way to learn the fine points of the MathObject and PGML syntax.

Tutorials

Reference documents and manuals