Curriculum Advisory Committee Consultation Rubric
This rubric defines the division of responsibilities between The Carpentries Maintainers and The Carpentries Curriculum Advisory Committees (CACs). Roles and responsibilities of Curriculum Advisory Committee members are documented elsewhere in this Handbook. Current committee membership can be found on The Carpentries website.
Issues about which Maintainers should notify the CAC
Any new versions of a dataset (either a new release or a modification of existing data)
Any major adjustments to the lesson (e.g., episode order, passwordless access)
Any updates to a lesson that Maintainers wish to share for informational purposes
What to do if your curriculum does not have an active CAC? Maintainers do not need to notify anyone when handling issues described in the list above. (View the list of active CACs on The Carpentries website.)
Issues for which Maintainers must seek CAC approval
Replacing the dataset used in the lesson with a different dataset. This does not include cases in which the data being used in the lesson is being updated to a new version (e.g., a new data release) or is modified to make it more suitable for the teaching environment (e.g., introduction of messiness to the dataset).
Changing the software being used in the lesson. This does not include updating to a new stable, backwards-compatible version of the existing software (e.g., Python 3.6 → 3.7.x), but does include:
Updating to a non-backwards compatible version of existing software (e.g., Python 2.x → 3.x, R 3.x → 4.x)
Change in plotting library (e.g., Matplotlib, Plotly, Seaborn, ggplot, Altair)
Change in libraries / packages taught (i.e., removal or replacement)
Change in SQL dialect (e.g., SQLite, MySQL, PostgreSQL, MSSQL Server)
Change in IDE being used to teach the lessons (RStudio, Jupyter Notebook)
Change from GitHub as remote hosting platform to a different remote hosting platform, e.g., GitLab
Removal of an entire episode’s worth of content
Change in lesson infrastructure (e.g., moving Genomics lessons from AWS to CyVerse)
Retirement of a lesson (e.g., MATLAB, Mercurial)
Addition of a new lesson to the core curriculum (e.g., adding Julia as an alternative to R / Python)
Adding or removing prerequisites from a lesson (for curricula with multiple lessons)
Promotion or graduation of a lesson from alpha to beta to stable. Decisions on approval can be based on recommendations from the Curriculum Team, CAC member involvement in lesson pilot workshops, and/or open peer review of lessons in The Carpentries Lab.
What to do if your curriculum does not have an active CAC? Maintainers should consult the Curriculum Team (by email or tagging the core-team-curriculum
team on the relevant GitHub issue/pull request/discussion) when handling issues described in the list above. The Curriculum Team will coordinate and facilitate a discussion among community members likely to be affected by the changes (other Maintainers, Instructors, etc). (View the list of active CACs on The Carpentries website.)