WeBWorK Problems

PCC Basic Algebra and Basic Math problems

PCC Basic Algebra and Basic Math problems

by Alex Jordan -
Number of replies: 4
Hello WeBWorK users,

We've just added two libraries totaling over 1400 problems to the OPL. Well, they aren't in the actual OPL yet because it will take some time for the OPL maintainers to review them. But they are available to you now as detailed below.

These problems deal with basic algebra and basic math, topics which are not part of university curricula. But they will be of interest to high school, community college, and remedial university instructors. The problems use randomization, have coded solutions, use Math Objects, and have had attention paid to web accessibility issues. Additionally we developed a few new PG techniques to handle issues at this level, such as polynomial factorization and required simplification of radical expressions. These problems surely still have a bug here and there with a bad random seed, but they have been vetted through about 50 different sections over the past year.

Eventually these problems will be in the OPL, but for now they are in
/opt/webwork/libraries/webwork-open-problem-library/Contrib/PCC. To access them on your server, you can:

cd /opt/webwork/libraries/webwork-open-problem-library
git pull origin master

and you will then have both of:

The problems almost all use special macro files, which will have been pulled to

but that file path needs to be added to the array reference in defaults.config, like so:

$pg{directories}{macrosPath} = [

Now you need to add symlinks in the templates folder in your courses that link to the libraries. You can do this all at once with the following. If you know that you have permission to add symlinks in your courses, you can remove the sudos from this.

for each in /opt/webwork/courses/*/templates

do ( cd $each; sudo ln -s /opt/webwork/libraries/webwork-open-problem-library/Contrib/PCC/BasicAlgebra/ PCCBasicAlgebra; sudo ln -s /opt/webwork/libraries/webwork-open-problem-library/Contrib/PCC/BasicMath/ PCCBasicMath )


You could also just create symlinks in individual courses.

Once this is done, each course should have @PCCBasicAlgebra and @PCCBasicMath as symlinks in the templates folder. From the Library Browser, in Local Problems you will be able to find the problems. If you like you can go one step further, and make each of these two libraries a button in your Library Browsers. To do this, add lines to this hash in localOverrides.conf like this:

$courseFiles{problibs} = {
Library => "OPL Directory",
# rochesterLibrary => "Rochester",
# capaLibrary => "CAPA",
PCCBasicAlgebra => "PCC Basic Algebra",
PCCBasicMath => "PCC Basic Math",

This will make the problems "disappear" from your Local Problems button, but add a "PCC Basic Algebra" and "PCC Basic Math" button instead. At some point they will become part of the actual OPL, and these symlinks and separate library buttons will be unnecessary.

Please send any feedback about these problems to me (alex.jordan@pcc.edu). We'll correct any issues and maintain the problems on github, so a simple pull should give you updated versions.
In reply to Alex Jordan

Re: PCC Basic Algebra and Basic Math problems

by Hedley Pinsent -
I think the recursive l ink came from you but I could be wrong.

If so - it will cause confusion.


Attachment basicAlgebra.png
In reply to Hedley Pinsent

Re: PCC Basic Algebra and Basic Math problems

by Alex Jordan -
There's no link like this in what is on github, and I don't have a link like that in our development server where I tested that procedure for bringing in the libraries.

Maybe something is wrong with the for each loop I posted? I'll let someone more literate with linux take a look at those instructions I posted and see if something is wrong with them.
In reply to Alex Jordan

Re: PCC Basic Algebra and Basic Math problems

by Hedley Pinsent -
I did not exactly follow the instructions.
It is probably me.

That being said, I and at least one other person had a similar issue using the CAPA problems sets . . . possibly a hazard of some sort.

In reply to Alex Jordan

Re: PCC Basic Algebra and Basic Math problems

by Alex Jordan -
Some of these problems (roughly 100 out of 2000) use a macro called pccTables.pl, which lives in webwork-open-problem-library/OpenProblemLibrary/macros/PCC, and which actually just redirects to something called niceTables.pl, which currently lives in the develop branch of pg/macros. niceTables.pl assumes certain alterations have been made to the latex preamble for hard copies; changes that are part of the develop branch of webwork2.

Complicating things, at an earlier stage, a more primitive version of niceTables.pl was called pccTables.pl, and that pccTables.pl currently lives in the master branch of pg/macros. The problems may still function using this older pccTables.pl, but some may need the new pccTables.pl which is redirecting to niceTables.pl.

All this should be sorted out with a late winter 2.10 release. But in the mean time, trying to use the 100 or so problems that rely on niceTables.pl may cause you some headache.