|A Day in the Life of a WeBWorK Professor||topic started 7/25/2002; 5:36:00 AM
last post 7/25/2002; 5:36:00 AM
|Amanda Danforth - A Day in the Life of a WeBWorK Professor
7/25/2002; 5:36:00 AM (reads: 3880, responses: 0)
A DAY IN THE LIFE OF A WEBWORK PROFESSOR
Informal instructions for using WeBWorK
(Instructions for WeBWorK 1.9). See WeBWorK2 tutorial for newer version.
QUICK OVERVIEWThis document gives details on how one professor actually uses WeBWorK. Most of what is discussed here can be done on the professor page after you login into your course. See the WeBWork on line documentation for more information on almost everything. Also the online discussion group http://webhost.math.rochester.edu/webworkdocs/discuss/ is a good place to go for help.
FIRST THINGS FIRST
The professor page is an amazing sourse of information, and has the ability to help a professor do nearly everything for managing a course. One must note, that the professor page is only accessable to those how have professor privaleges. This is done by running the Perl script
See Classlist Information for more help on this.
The first thing that needs to be done after this is to make sure and "build" at least one problem set to access all the features of the professor page. Usually this is easily done by building set 0, which is a problem set designed to familiarize students with the system, and is generally not worth any points. So, if you do not have full access to all of the professor page, make sure you build set 0.
VIEWING STUDENT PROGRESS
There are many ways for you to view how your students are doing. You have the option of viewing progress by section, by recitation, or by individual student. You will see what score the student has, how many attempts it took to get the right answer, the percent of class that has the correct answer, and many other things.
These features are a good tool to recognize students that may need additional tutoring, and to find the problem that most students are having trouble with. Options 1, 2, and 3 on the professor page help go through the class as a whole.
For the individual student, see option 9 ("Examine or modify data for an individual student"). From this page, you can give the student a different due date on a problem set, view the student's version of the problem, see what they entered as an attempt, download a paper copy of thier problem set, and other things.
In order to have a successful course, the trick is to create appropriate problem sets. You want the problems to correctly reflect the topics that are discussed in class, and to be the appropriate difficulty level. Thus, creating a problem set is one of the most important steps in a maintaining a successful WeBWorK course.
Picking out Problems
Most of the time it is easiest to just copy problems from the distributed problem library when creating a new problem set. (If you are writing new problems see below "writing new problems.") Since there are over 3000 problems that are distributed with WeBWorK, it is best if you take some time to go through the problem library to pick and choose which problems you want to use for your course.
The problem library is set up so that the problems are organized by topic. Problems in the same topic area are in the
same directory, which is a subdirectory of the
For example, the subdirectory
Thus, the first thing you need to do is copy the appropriate directories for your course (and all of their contents)
from the problem library into the templates directory of your private course (
Now that you have the problem library in the templates directory of your private course
For example, if you're interested in Derivatives, in the "Build Problem Sets" page, click on
Now it's time to put together your problem set in your private course. Let's assume you are putting together problems that are going to make up WeBWorK set 9.
One thing to remember is that you might want a few problems from one topic directory, and
a few problems from another topic directory. For example, you might want problems
It is important to understand that you do not have to put all 46 problems from directory
Set Definition File
Now that you have your individual problems picked out, you have to create a
The set definition file
Here is a sample file,
There is also a way that you can edit a set definition file over the internet through the professor page. This is a handy
way of doing your editing if you have limited or no shell access. From the professor page, go to the "Build Problem Set"
page. Option 2 on this site is "Simple editing of set definition files." Once again, if you were putting together WeBWorK
set 9, you could edit
Next you build the WeBWorK set in your private course. Here you have a short classlist file containing a couple
of users and one professor, called
Now you should have a fully working problem set which is due on 9/15/02. You should make sure to go through this problem set to make sure that you don't have any errors, and that everything is working correctly. Make sure that your answers are the same as WeBWorK's answers. Also try getting a hard copy to make sure that you don't have any LaTex errors. If everything is working smoothly, all that is left to do is to transfer everything over to your public course. From your templates directory of your private course, type
Also if you need to, copy all the necessary subdirectories and their files (using
Then you can build the set for real by entering the prof Page in mth141, then the "Build Problem Set Page", selecting set9.def, and building the set.
Next you precreate the latex2html images. This is useful because all of your problems have latex images, and viewing them in "typeset" mode is the nicest for viewing. If the images are not precreated, the first time a problem is output in "typeset" mode, all the images are created on the fly and there is usually a few seconds delay. If many students are creating images simultaneously, this could take even longer, and you will run into the risk that the images will be created with errors. If there are errors, the students will not be able to view the problem in "typeset" mode. However, if you use the precreation script, once the images are precreated, the "typeset" mode is quite fast.
The precreating script is used by entering:
Note that this takes a long time as latex2html is a "slow" program (it might take as long as 4-6 seconds
per problem per student on a relatively fast server).
which (under many shells) sends all messages to the set9.log file.
Writing new problemsYou may want to select problems from the text book which you want to modify into WeBWorK problems. In order to create a problem template file (i.e. a .pg file), usually you start with a .pg file containing a problem similar to the one you want and modify it (see the list of approximately 3000 .pg files distributed with WeBWorK). Make sure to continue working in your private course.
After creating all the
When writing your own problems, you will usually have a few errors here and there. To sort through them, here's a general guideline to help.
Connect to your mth141priv site with your web browser and look at the new set. First do a Get Hard Copy. Often, you have made a LaTeX error somewhere. Or perhaps the group ownership and/or permissions of the files was not set correctly. If there are errors, they will be listed along with a copy of the TeX source file which was produced.
If you can't see where an error occurs, select the problems one by one. After fixing any errors and obtaining a postscript or pdf version of the WeBWorK assignment, look at the assignment for any errors in presentation. Sometimes, the output is not what you expect.
Note that the .pg files must have permission 660 and group mth141group in order for the webserver
to be able to read and write to them and subdirectories should have permission 770.
You can check permissions by entering
See Constructing Problem Sets for more information.
ADDING NEW STUDENTS AFTER THE COURSE HAS STARTED:Just go to the Add Student(s) Page and follow the instructions. If you want to build multiple sets for the new students with different due dates, run the routine multiple times. Adding a student who is already in the course will not change any information already in the classlist database.
Hint: If it is early in the course and you want to give new students the same due dates that current students have, add the new students from the Add Student(s) Page but do not build any sets for them there. Then go to the Build Problem Set page and (re)build the sets that were not built for the new students. (Re)building sets that have already been built will not alter any data for students already in the set.
CLASSLIST EDITINGFrom this page you can edit classlist database, give a student a new password, or edit the classlist database for an individual student. You can also import and export the database, depending on whether you need to update your database due to students adding or dropping.
Changing a password
If a student forgets his or her password, you can give them a new password, using option 3 from the Classlist Utilities page.
Changing a login name
To change a student's login name, you can give them a new login, using option 2 from the Classlist Utilities page.
Removing students or changing status
Removing students is easy. Just enter the word "DROP" or the letter "D" (without quotes) in the status box for the student classlist information (from the Classlist page). You may want to enter a comment giving the drop date. You can later resurrect the student by changing his or her status to C (for current). In that case, you may want to go to the Build Problem Set page (or Add Student page) and rebuild the sets that were not built for the dropped student. (Re)building sets that have already been built will not alter any data for students already in the set.
Importing and Exporting Classlists
Importing and exporting can be tricky procedures. Make sure to clearly read all of the instructions before attempting,and make sure to understand the differences between a classlist database and a classlist file. Exporting the classlist database (option 5) will export the current classlist database to the selected classlist file.
Importing the classlist database (option 6) will update the classlist database using the information from the selected classlist file. We used this option when we imported our classlist at the beginning of the semester. See "Classlist Information" for more details.
Exporting the classlist file (option 7) allows you to download the classlist file so that you can view or edit the classlist from your personal computer.
Importing the classlist file (option 9) allows to upload the classlist file from your personal computer. Usually you would do this after exporting the classlist database to a file, downloading and then editing the file in Excel or some other editor or spreadsheet program.
See the Classlist Utilities page from the professor page for more information and specific help on how to preform these tasks.
SCORING A PROBLEM SETYou can do scoring from the web. Go to the Professor's Page and then to the Scoring Page. The scoring procedure creates files (in .csv format) that include the status of the problems, the number of attempts, and also the final score of the problems. You can download these different files onto your personal computer, edit them if you need to, and/or sort the scoring files.
You should realize that scoring a problem set is like writing grades into your grading book, once the grades are entered they are fixed unless you change them. Whatever a student does after a set has been scored, does not effect the scoring files.
There is no standard procedure of when to do scoring. You may have a few options.
It should be noted that the first time a mth141_totals.csv file is created, student names, sections, and recitations will be taken from the current classlist information. If you score a set after that, the new information is appended to the mth141_totals.csv file by matching student ID's. If you change a student's recitation (or name, etc) but keep their student ID, the new recitation will not be written in the mth141_totals.csv file. If students add or drop the course, this will be handled automatically.
All the scoring files are automatically put in the directory
Also, it's easy to use e.g. excel to add exam grades to the mth141__totals.csv file.
You can also do scoring from the command line (this is not recommended). To do so follow the directions below.
You should usually work from your templates directory (but this really doesn't matter). To score set 6 enter:
This creates the files
You can ignore all such messages. In general they have to do with automatically handling records for students who have been added to or dropped from the course.
See Grading problem sets for more information on scoring.
SENDING EMAIL TO STUDENTSSometimes, after you score problem sets, you may want to send your students an email discussing thier scores. Other times you may want to send an email to students with general announcements about your course. There is a useful tool on the "Professor page" that allows you to send email, which allows you to send personalized emails.
The personalized variables include: $FN - first name, $LN - last name, $SID - student id number, $SECTION - student's section, $RECITATION - student's recitation, $STATUS - C, drop, withdrawl, audit, etc, $EMAIL - student's email address, $LOGIN - student's login name, $COL - third column in merge file, $COL[-1] - last column in merge file.
Here is a copy of the file email10-25-96.msg which is in the email subdirectory of the templates directory. :
Now you can send a "personalized" email to your students by merging the above with the
Usually you want to be really careful, so first send the email to yourself
by using a short
After the test email comes to you, and you see that there are no errors, you can go ahead and send your class personalized emails!
See Sending e-mail for more information.
VIEWING AND EDITING DATA FOR THE INDIVIDUAL STUDENTThere are many times when you might want to view or modify data for the individual student. You would want to do this for a number of reasons. Perhaps a student is having trouble with an single problem, you can view this student's version of the problem to help them, or you need to give a student an extension on a problem set, or see the status of this student's progress. All of this can be done through the professor page.
There are two different ways you can use these utilities. If you know a student's PSVN number, you can go to option 10 in the professor page. If you don't know this, you can use option 9 in the professor page instead, using the student's name and problem set name/number.
From here, you can make changes for an individual student. For example, you can extend the due date for an individual student or change the status (correct, incorrect) or number of allowed attempts on a problem. You will also be able to download a postscript file of this version of the problem set.
See the professor page for more information on how to use these utilities.
VIEWING AND EDITING DATA FOR THE ENTIRE CLASSFrom this page, you can give a new due date on a problem set for the entire class, or change the status of a problem for the entire class. You can also change header files, or even change the max attempt value. While it is easier to do these changes before a problem set is built, this gives you the option to change things after building problem sets.
HOUSEKEEPING UTILITIESFrom the "Housekeeping Utilities" page, you can do some housekeeping tasks such as recovering disk space by removing old tmp files, show users currently logged in, or edit the course homepage. See option 14 for more information.
CREATING AND ADMINISTERING A WEBWORK EXAMHere is an idea about how to create and administer a WeBWorK exam. The idea is that every student takes the same identical in-class exam. You can create a standard WeBWorK problem set using the exam questions so that on this set, each student has an individualized version of the exam questions.
You can give students some 30 hours after the in class exam ends to do the WeBWorK version of the exam. If they get a problem (or a part of a problem) wrong on the in class exam and the whole problem correct on their WeBWorK version, they receive 25% of the original value of the part(s) they missed on the in class exam.
This seems to work quite well and is easy to administer. Mechanically, it works as follows.
First you can create a set of problems for the exam and check that they are OK. For example, use exam2.def as the set definition file and in that file have setNumber = Exam2 as the first line. Don't put any spaces in the "setNumber", i.e. write Exam2 not Exam 2.
I do this in my own mth141priv area. I have a testexam.lst consisting of SS#'s 000-00-000n and login names apizern where n varies from 1 to 9. I also have a special examHeader.pg file in the exam2 subdirectory which identifies the exam, leaves spaces for the student's name and SS#, etc. In exam2.def, I have the line
setHeaderFile = exam2/examHeader.pgso that the special header file will be used.
Then I build a problem set using this list. On the web, I look at the nine possible versions of the exam and pick one to use for the in class version and download two copies of that one. If for some reason I don't like the samples, I can go to the prof page and change the seeds of problems or I can adjust the pg files and/or delete and rebuild the set.
This is usually not necessary. This is done in my private mth141priv area that the students know nothing about and could not (not knowing my WeBWorK password) access even if they did. On one copy of the in class version, I write in by hand the correct answers (and as a double check enter these answers into WeBWorK to make sure they are correct). Next I xerox sufficient copies of the exam (both with and without answers) for the entire class. I transfer the exam questions to the public version of my WeBWorK course and then build the set again using the standard probSetHeader.pg and mth141.lst files.
I am very careful to make sure that the open date in exam2.def is correct (I open it three quarters of the way through the in class exam). Then I run off paper copies (see down loading paper copies for an entire class) of the individual versions of the exam. The paper copies are printed in order, first by section name, then by student name.
At the exam, after a student hands in his or her completed exam, I give the student a copy of the exam with answers and a copy of their individual version of the exam. Thus the student can immediately begin to work on problems which they got wrong on the exam. Giving students these two things is just a convenience for the students, but one which seems to be appreciated.
If I just wanted to allow students to check whether or not their answers were correct without telling them the correct answers, I would use the prof page to copy the seeds from the in class exam version to say practice1 in mth140a. That way, Exam2 for practice1 in mth140a would be identical to the inclass exam.