Open Resources for Community College Algebra (ORCCA) is an open-source, openly-licensed textbook package (eBook, print, and online homework) for basic and intermediate algebra. At Portland Community College, Part 1 is used in MTH 60, Part 2 is used in MTH 65, and Part 3 is used in MTH 95.

ORCCA is available as an interactive eBook, as a downloadable PDF, and as a printed/bound copy.

For questions about ORCCA, you may send a message to


Open Resources for Community College Algebra is licensed under a Creative Commons Attribution 4.0 International License. Under this license, any user of this textbook or the textbook contents must provide proper attribution as follows. If you redistribute all or part of this textbook, then you must include in every digital format page view (including but not limited to EPUB, PDF, and HTML) and on every physical printed page the following attribution:

Original source material, products with readable and accessible math content, and other information freely available at

If you redistribute all or part of this textbook, then you must reproduce any math content (such as math expressions and equations) in a readable manner, and offer math content in at least one web accessible manner.

The Portland Community College name, Portland Community College logo, ORCCA name, Open Resources for Community College Algebra name, ORCCA logo, and front and back cover designs on print copies are not subject to the Creative Commons license and may not be reproduced without the prior and express written consent of Portland Community College.

For questions regarding this license, please contact

 Answers to Odd-Numbered Exercises

Answers to the odd homework exercises from Edition 1 of ORCCA are available here: orcca-odd-answers.pdf

A few odd answers may be missing. This should only happen with questions that do not originate in WeBWorK.

 Supplemental and Ancillary Material for Teachers

Sample schedules and homework sets

These are tailored to PCC's schedule and only available to PCC faculty through the Google Drive.
Fall 2018

Various resources (sample lecture notes, sample worksheets and quizzes, sample exams, sample exam reviews, and a few other things)

These are only available to PCC faculty through the Google Drive. Enter the Google Drive, and navigate:
Google drive → Shared with me → PCC math documents → MTH 60 ORCCA (or MTH 65 ORCCA, or MTH 95 ORCCA)

 WeBWorK demonstration

For a demo, see

If you are PCC faculty and are interested in using ORCCA together with WeBWorK for online homework, please contact Alex Jordan.

 Observations, Feedback, and Suggestions

If you have observations to share with the writing team, you can submit them here. You may submit trivial issues like say a typo, or more weighty observations such as specific ways in which a topic could be handled better, etc.

ORCCA Feedback Form

Whenever possible, small fixes will be made quickly for the current edition of the eBook. More substantial changes will accumulate for the next edition.


In July 2016, PCC's strategic planning initiative awarded funding for math faculty to produce a complete OER for precollege algebra. The book has a working title of ORCCA (Open Resources for Community College Algebra).

At PCC, these materials will cover the sequence MTH 60/65 (or its alternatives MTH 61/62/63 or MTH 70) and MTH 95. The textbook is being written using PreTeXt, which provides

  • an e-book, free to everyone
  • a print book synchronized with the e-book, available for free as an electronic pdf, or for cost plus overhead at the PCC bookstore
  • embedded online homework problems using the online homework platform WeBWorK

Work began in summer of 2016.
The MTH 60 portion of the book was piloted by 11 PCC faculty in Fall 2017, 12 in Winter 2018, and 9 in Spring 2017.
The MTH 65 portion of the book was piloted by 7 PCC faculty in Winter 2018, and 9 in Spring 2017.
The MTH 95 portion of the book was piloted by 10 PCC faculty in Spring 2017.

Starting in Fall of 2018, all face-to-face sections of MTH 60/65 will use ORCCA. Online sections may choose to use ORCCA or a specified commercial textbook. For MTH 95, all sections may choose to use ORCCA or a specified commercial textbook.

The content of the early editions is driven by PCC's Course Content and Outcome Guides for these courses. The approach to the content is partly informed by the authors' understanding of how this content is currently taught at PCC, and partly informed by published research on improving student success at these levels. It is our hope that over time, ORCCA replaces the CCOG in the sense that it becomes the CCOG. Committee work that has been put into CCOG development and textbook searches in the past will instead be put into making this book suit our needs.

 Where is ORCCA in use?

In addition to Portland Community College, some faculty at the following institutions are known to be using ORCCA.

  • Bridgewater State University
  • Emporia State University
  • Lane Community College
  • Oregon Coast Community College
 Pilots During the 2017/8 Academic Year

This information is now gathered at a separate Pilot page.

 WeBWorK Information for Institutions Outside of PCC

If you are not PCC faculty, and are interested in using ORCCA together with WeBWorK for online homework:

  1. Upgrade your WeBWorK installation (webwork2 and pg) to 2.14, and update your OPL.
  2. Clone PCC's problem library ( into your webwork/libraries folder.
  3. Unpack this tarball in webwork/libraries to make an ORCCA folder.
  4. In each course where ORCCA will be used, in that course's templates folder, create symlinks:
  • ln -s /opt/webwork/libraries/PCC/BasicMath BasicMath
    ln -s /opt/webwork/libraries/PCC/BasicAlgebra BasicAlgebra
    ln -s /opt/webwork/libraries/PCC/Math95 Math95
    ln -s /opt/webwork/libraries/PCC/CollegeAlgebra CollegeAlgebra
    ln -s /opt/webwork/libraries/ORCCA ORCCA

If your value of $options{setDefSearchDepth} is set high enough (this can be set in localOverrides.conf or in a course's course.conf) then when you are in a course and go to import sets, you will see some set def files under the ORCCA/ folder in there. 

Sets like
are the interactive exercises from a section.

Sets like
have every WeBWorK exercise from the end of a section. Note that some exercises in ORCCA are not WeBWorK exercises. Mainly, the ones that ask a student to make a graph.

 Contributing to ORCCA (Not intended for general audiences)

If you would like to contribute to ORCCA (including working on your own separate branch of the book) you will need some orientation and assistance getting started. In the future there may be tutorials (with videos) for doing this. For now, please contact to discuss it.

For PCC faculty and others contributing to the main branch of the book here is some background, followed by suggested workflow.


The ORCCA repository uses git software for version control. Technically, that means the project is decentralized and there is no place where the "true" source resides. However, we will view the PCCMathSAC account on GitHub as holding the "true" source for the project. The address for this repository on that GitHub account is

Nicknames for Repositories

(Because of a misunderstanding early on in this project, the following information will conflict with the understanding of early contributors. Early contributors should study the following even more carefully to correct this.)

Traditionally with a project that uses git and GitHub, the nickname "upstream" to refer to the "true" source. In this case, that is the repository at Also traditionally, "origin" refers to someone's personal GitHub account and their fork of the repository. For example, Ann Cary has a copy of the repository at, and to her (and her alone), "origin" should mean that repository. To anyone else, "origin" should mean that person's own GitHub fork.

Names for Branches

Each repository has "branches" where slightly different versions of the project reside. At this point, we will have two branches. The first is named "master" which is a traditional name for the main branch. This branch has the state of the project as of the last release. Also when there is something small to edit, this branch will accumulate such edits. Such as typos, math errors, and small improvements that change the eBook without making it diverge in meaningful ways from the print edition. We do not make changes to this branch that would change any numbering, WeBWorK problem seeds, etc. We must keep in mind the users that refer to both the current print version and the eBook in tandem.

The other branch is named "edition". First of all, every change to "master" will automatically be merged into "edition" as well. But this branch also accumulates more significant edits, including any rearrangement of content, addition/deletion of significant content, any edits that change numbering or WeBWorK seeds, etc.

If you end up working on a version of the book for your own students or your own institution, it is probably best to create a new branch for that.

Names for Tags

There are certain development points that are true milestones. Such as the moment a PDF is sent to the printer for an edition printing. These points are "tagged". A tag is like a branch, but cannot evolve. Also a tag is not always automatically transferred when pushing and pulling from one repository to another. At this point, there is only one tag: "edition-gamma".

Your Local Repository

Your work station should have the ORCCA repository, along with both branches (master and edition). To check, run "git branch". There may be more branches and that is OK. Your local repository should recognize two remote repositories on GitHub: "origin" and "upstream". To check, run "git remote -v".


The following assumes some basic familiarity with git, including how to use "git status", "git diff", and how to stage and commit edits using "git add" and "git commit".

Suppose you see a typo, or something small scale. You should checkout your local master branch ("git checkout master"). Then make the edit, stage it, and commit it. Then push master to origin ("git push origin master") and then make a pull request from your GitHub account's master into the PCCMathSAC master. This will be reviewed and approved, and then PCCMathSAC's master will also be merged into PCCMathSAC's edition, so that the working next edition also gets the small-scale edit.

Suppose you are working on something more substantial. You should checkout your local edition branch ("git checkout edition"). Then make the edit, stage it, and commit it. Then push edition to origin ("git push origin edition") and then make a pull request from your GitHub account's edition into the PCCMathSAC edition. This will be reviewed and approved.

Note: If you try to checkout some branch and git says no it won't do that, it probably means that you have uncommitted edits to certain files that would be obliterated by checking out some other branch. You can either directly address those issues (stage and commit appropriately or revert them to their unmodified state) or you can use "git stash" to temporarily stash the modifications away. It's easy for newcomers to get confused by "git stash", so seek guidance before using it.

Suppose you end up accidentally doing two kinds of the above things at the same time. Like, in the same file you have edited typos (which should be committed to master) and you have added an entire subsection (which should be committed to edition). Don't panic. With tools like "git stash", and selective staging with "git add -p", you can separate your two edits cleanly. You could also just put it all into edition, and separately make a smaller edit and pull request to master. Seek guidance as needed.

  • No labels

1 Comment