Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

[Proposal - Work In Progress - Comments Welcome]

Table of Contents
minLevel1
maxLevel7

Problem Statement

There are many contributors to the Open edX platform that participate in a variety of ways beyond coding - particularly translators, QA folx- writing code for the Open edX software, translating the project, people performing Quality Assurance tasks, members of the Marketing working group, documentation folxwriters, and more. Whilst the core committer (CC) program While previously the Core Contributor Program has focused on code contributors, we want to send the message that all contributors to the platform play a meaningful role and deserve the designation Core Contributor.

Core Contributors have a set of Rights and Responsibilities to the Open edX platform. In exchange for those Rights to contribute, we ask for some Responsibilities: this may will include signing NDAs, taking edX training courses, a Program Agreement and following the responsibilities of the roles that are laid out below.

Who can become a Core Contributor?

What specific roles required is detailed in the below CC Role Descriptions section. In general, however, people wishing to be CCs Core Contributors need to show sustained, active performance in the role prior to being nominated as a CCNTC. We call this the “3 Cs”: Commitment, Conduct, Caliber. These people follow the Code of Conduct, are respectful of other community members, and are generally polite and welcoming. That means if you wish to be a CCCore Contributor, you should begin by joining the Open edX project and participate in a way that’s meaningful to you. Reach out to us if you don’t know how to begin!

How to become a Core Contributor?

Please familiarize yourself with the contents of OEP-54: Core Contributors, which discusses the program and how nominations occur. To become a core contributor, you will need to be nominated and provide evidence of how you’ve demonstrated the “3C’s” as defined above. That is, what have you already contributed to the Open edX community, and at what quality (Caliber), how have you interacted on pull requests, in writing (Discourse, wikis, Slack, etc), and/or in working groups (Conduct), and how long have you been an active member of the community/how do you intend to actively continue to contribute as a CC (Commitment)?

Core Contributor Role Descriptions

Definitions are being worked on throughout Q4 (ends June 30) based on interviews with edX subject matter experts. Roles are listed below; the person listed next to the role is the person most highly responsible for the definition.

...

Axim Legal Requirements: Common for all

...

Core Contributor Program Participants

We are asking that all Core Contributors, regardless of role, complete the following requirementsrequirement:

  1. [If applicable] Confirm that your employer has signed an Entity Contributor Agreement and identified you as an authorized submitter under that agreement. As an employee, the work output you generate is likely owned by your employer or a client of your employer, so it is important to confirm that (1) your employer supports your participation in this program and (2) the work you wish to contribute can be appropriately provided to edX.

  2. Sign an Individual contributor agreement (using personal email address, not work email address) and submit to Legal. (For clarity, as described above, we expect the employer entity agreement to cover most contributions for so long as that relationship exists.) 

  3. Sign an NDA and submit to Legal.

Additionally, most roles will require that CCs take the edX Privacy & Security Course, as well as the edX Accessibility (a11y) course (non-Engineering version). Exemptions and/or additions are listed below each role under the “edX requirements” section.

P1. Project manager (working on edX blended projects) - Michelle & Natalia

  • Responsibilities:

    • This person is a member of an edX partner organization

    • Good understanding of the breadth of work going on currently between edX & their company

    • Not just focused on one project but manages the company’s scope of work - multiple projects (Blended and others)

    • Managing the relationship between edX and their company

    • First one we go to when there’s an issue; things get escalated to them

    • Position won’t come from the community - comes from partners already actively managing projects & teams & relationships

  • Access:

    • JIRA

    • Confluence

    • Miro access for facilitating group conversations

    • Calendly account

    • Any additional access, as needed, to support particular projects and working groups that the PM is associated with.

...

Sign a Core Contributor Program Agreement, sent to you by Program administrators when you are invited to the program. This Agreement covers all NTC role types, so if you switch to a new role or add on responsibilities of a second, you will not need more paperwork (exception: the Committer role requires a bit more paperwork)

We are additionally asking that, for those Core Contributors contributing on behalf of an employer, all employers of Core Contributors sign the Revised Declaration of Commitment to the Core Contributor Program to demonstrate that they are willing to spend part of your time working on the Open edX project.

Project manager (leading Open edX projects and/or working groups) -

...

Sarina

  • Responsibilities:

    • Effectively and efficiently enable collaboration on Open edX projects and working groups.

    • Perform quality control on the project throughout development to maintain the standards expected.

    • Keeping up with the development team on a regular cadence to ensure work is progressing

    • Planning

      • Create long- and short-term plans, including setting targets for milestones and adhering to deadlines.

      • Adjust schedules and targets on the project as needed.

    • Communications

      • Communicate updates and keep the project aligned with their goals .to relevant stakeholders & the broader community

      • Serve as a point of contact for the project.

    • Collaboration

      • Facilitate group discussions that result in effective decision-making when multiple options are present.

      • Delegate tasks on the project to community members best positioned and interested to complete them.

      • Prefer asynchronous discussions to accommodate global timezones.

    • Keeping track of project or program specifics

      • For example, for funded projects, keep track of how much of the budget is being spent on a sprint (2-week) basis

  • Access:

    • GitHub - Write Triage Access to GitHub Projects

    • ? Miro access for facilitating group conversationsCalendly account

    • Any additional access, as needed, to support particular projects and working groups that the PM is associated with.

...

  • Requirements for nomination:

    • Demonstrated consistent participation in the Open edX project in areas of project management that are detailed above

    • Per the definition of the Core Contributor program, a demonstration of the “3 C’s”:

      • Commitment: Has shown ongoing organizational and “glue” work - plus anything else - for the Open edX community

      • Conduct: In written and verbal communication, is welcoming to all, provides helpful feedback, and overall maintains a positive attitude

      • Caliber: The work produced is of a consistent high quality

Community Contribution Project Manager - Sarina

  • Responsibilities:

  • Access

    • Triage access on some to all of the openedx code repos

  • Requirements for nomination

    • Demonstrated consistent participation in the Open edX project in areas of project management (see the “Project Management” description) and/or project participation in any form (working group participation, writing code, etc)

    • Per the definition of the Core Contributor program, a demonstration of the “3 C’s”:

      • Commitment: Has shown ongoing organizational and “glue” work - plus anything else - for the Open edX community

      • Conduct: In written and verbal communication, is welcoming to all, provides helpful feedback, and overall maintains a positive attitude

      • Caliber: The work produced is of a consistent high quality

Translation Reviewers - Eden

  • Responsibilities:

    • Translate Open edX strings into their spoken language(s)

    • Review/accept translations; serve as arbiters of correct translations

    • Attend Transifex bi-weekly Translation Working Group meetings

    • Report Open edX-specific and uncontextualized strings to the edX teamTranslation Working Group

    • Identify stellar translators in their language and encourage/support them

  • Access:

    • Access they already can get for free: translator access on Transifex, reviewing capabilities for their language(s)

  • edX requirementsRequirements for nomination:

    • Required review of a Transifex training document instead of the privacy and a11y training courses

...

    • Consistent contributions to string translation and review of translations within the edX platform project in TX (can be tracked through TX reporting mechanism, which displays contributions by individual), to help us achieve 100% completion rates in the translation & review of translations per release.

    • Contributions to projects that enhance the overall Open edX i18n strategy (e.g. updating current documentation, assisting in reviewing the machine translations on openedx.org, technical discovery on enhancing content translation availability within the LMS, assisting with string decoupling efforts between edX and Open edX strings, etc.)

QA - Sarina

  • Responsibilities:

    • Test the following areas and produce actionable issue reports, following up with coders needing clarification, retesting, etc.

      • Test new features prior to or immediately after release, including accessibility and internationalization aspects

      • Test out/exercise named releases

      • Test and review documentation of features, both new and existing features (maintenance work)

      • Test and review release notes.

  • Access:

    • Potentially read only access to Miro

    • Potentially access to shared Google docs

    • Access they already can get for free: GitHub read access, devstack, edx.org student account

  • edX requirements:

    • Take the Engineering version of the a11y course to be able to better test a11y features

...

    • Axim training site account

  • Requirements for nomination:

    • At least 6 months of QA work for any area of the Open edX project, including QA work for BTR and reporting well-documented bugs with reproduction steps

    • Per the definition of the Core Contributor program, a demonstration of the “3 C’s”:

      • Commitment: Has shown ongoing work in the Product space for the Open edX community

      • Conduct: In written and verbal communication, is welcoming to all, provides helpful feedback, and overall maintains a positive attitude

      • Caliber: The work produced is of a consistent high quality

Marketing WG members - Eden

  • Responsibilities:

    • Website enhancements to increase consumer site traffic (addition of pages, features, marketing material for external consumption)

    • Marketing and media outreach to increase the global awareness of the Open edX platform

    • Representing the Open edX project in public events, event planning and organizing (for both online and in person events)Transifex contributions for the Open edX platform & website (Italian, French, Spanish, German)

    • Video Production assistance for marketing and other user materials

    • Content Creation: identifying blog content & authors, social media content mgmt., website content in form of videos, images, demos + documentation

  • Access:

    • Website (authoring roles)

    • Transifex translator & reviewer access

    • Social media channel access

    • Shared space to discuss ideas, posts, and key launch dates (e.g. Adobe)

...

  • Requirements for nomination:

    • TBD

Documentation - Sarina

  • Responsibilities:

    • Proficiency in professional English

    • Follows the documentation specifications laid out in OEP-19

    • Maintain existing documentation: reviewing/updating documentation as needed, including:

      • Onboarding materials

      • Courses

      • Documentation infrastructure

    • Produce new documentation, including:

      • Test out released features and document their use

      • Test out developer-facing tools (devstack, Tutor) and document their use

      • Test out installing/running named releases and document how to do it

      • (potentially) provide documentation for unreleased features (note: I currently believe we do not have the capacity to support documentation of unreleased features)

  • Access:

    • Access they you already can get for free: devstack, http://edx.org student accountlearner account on Axim-hosted Open edX instance, local instance, or other community-based instance

    • Write access to Open edX documentation repositories

    • (potentially) access to shared Google docs & read-only access to Miro, if documenting unreleased features

P3. Product managers - Shelby

  • Responsibilities:

    • Define opportunity areas, other potential teams, gather input from the broader community

      • Ex ecommerce deprecation - would be good to have a product direction from the community about incorporating other third party payment providers

    • PM is required to have access to dev resources, so initially will need to be from an affiliated partner organisation or have other access to development resources (perhaps a coalition from the community?)

      • Unfortunately we do not currently have opportunities for PM work that is not backed by dev effort

      • For first iteration, we’d like to focus on finding 1-2 PMs who are working with already established Blended projects

      • May be an opportunity as well to fulfill a role on the Mobile team - more to come.

    • Has a “champion” relationship with a PM (may act as a mentor/helper - good opportunity for an edX PM without direct reports)

    • Participates in Product team meetings to present product direction/approaches as needed

      • Unlikely to have to participate in Consumer Review meetings

  • Access:

    • Miro

    • Figma

    • In some cases, JIRA/Confluence

    • Shared Google documents

  • edX requirements:

    • Participate in an interview with the Product team - may be a case study + an interview with the edX product manager you’d be working most closely with initially

    • Initially, is working on a blended project

...

  • Requirements for nomination:

    • Portfolio of documentation work done for the Open edX project (not a fork)

    • Per the definition of the Core Contributor program, a demonstration of the “3 C’s”:

      • Commitment: Has shown ongoing work in the Product space for the Open edX community

      • Conduct: In written and verbal communication, is welcoming to all, provides helpful feedback, and overall maintains a positive attitude

      • Caliber: The work produced is of a consistent high quality

Product managers - Sarina

  • Responsibilities:

    • Regular, active participation in the Product Working Group, which may include:

      • Contributing to the discussions

      • Participating in review and prioritization exercises

      • Providing input on product direction

      • Leading collaborative efforts with stakeholders in other working groups, focus groups, other core contributors

    • Help define opportunity areas, which may include:

      • Performing market/user research

      • Gathering community input

      • Conducting competitive/landscape research

      • Gap analysis

      • Product Briefs, Concept Documentation

    • Lead, or assist leading, the development of an initiative, feature or effort, which may include:

      • Scoping exercises such as user stories, specs, requirements

      • Working with UX designers on wireframes

      • Managing user feedback loops

      • Performing acceptance testing

    • Project Management skills may sometimes be required

  • Tools/Access:

    • Project Trackers, such as GitHub Issues

    • Triage access to all Github issues

    • Documenting systems such as wiki, google docs, Open edX documentation

  • Skills

    • Common product documentation, such as product briefs, gap analysis, concept notes, user stories, feature specs

    • Common product tools, such as survey work, market feedback methods, user interviews, project boards

    • Able to work synchronously via Zoom, Meet, and asynchronously via Slack

  • Requirements:

    • Able to present a portfolio of product-related work

    • Per the definition of the Core Contributor program, a demonstration of the “3 C’s”:

      • Commitment: Has shown ongoing work in the Product space for the Open edX community

      • Conduct: In written and verbal communication, is welcoming to all, provides helpful feedback, and overall maintains a positive attitude

      • Caliber: The work produced is of a consistent high quality

*Note: As we are in the early stages of building a product organization for Open edX, it is expected that no one currently has very much community Product work to showcase in their portfolio or as part of their Commitment. Thus, we expect it may take some time before any member of the community is a candidate for the Product Core Contributor position.

UX/UI - Sarina

  • Responsibilities:

    • Create design work in standard tools for upcoming/in flight projects

    • Participates in Design Review meetings with 2U/edX UX team, as needed

    • Has a “champion” relationship with a UX manager, as needed

    • Unfortunately we do 2U/edX does not currently have opportunities for UX work that is not a part of established projects. This means you should bring your own community projectsFor first iteration, we’d like to focus on finding 1-2 UX/UI designers who are working with already established Blended projects, or ask the 2U/edX team if there’s work available that you can pick up.

  • Access:

    • Miro

    • Figma

    • In some cases, JIRA/Confluence

  • 2U/edX requirements:

    • Participate in an interview with UX team

    • Does not start until we hire more UX managers in Q1

    • Initially, is working on a Blended project

P3. Open Source Pull Request Project Manager - Natalia

  • Responsibilities:

    • Someone external coming in and managing OSPRs - does not need to be affiliated with an edX partner organization

      • Ideally someone technical enough to understand how complex a given changeset is

      • Can use CI tools

      • Able to communicate clearly and concisely to core committers & edX engineering about priority and relative effort

    • Follows newly incoming requests and triages them

      • Say Hi on the PR

      • Route to the proper team

    • Follows older PRs and bumps them

      • Ping the author if something’s been waiting on them for a long time

      • Ping the reviewers if something’s been waiting on them for a long time

    • We can train you on this job!

  • Access:

    • Already granted publicly: read access to GH, shared Slack channels

    • Ability to move ticket states on the open Jira OSPR board

P3. Translator Administrators - Sarina

  • Responsibilities:

    • Manage translation pull jobs and correct various language translations as needed

    • Maintain the translation pull jobs

  • Access:

    • Transifex admin access

    • Github access to view output of nightly translation jobs

    • Potentially write access to GH to maintain the translation pull jobs

...

  • Requirements for nomination:

    • Portfolio of UX work done for Open edX (the main project, not a fork)

    • Per the definition of the Core Contributor program, a demonstration of the “3 C’s”:

      • Commitment: Has shown ongoing work in the Product space for the Open edX community

      • Conduct: In written and verbal communication, is welcoming to all, provides helpful feedback, and overall maintains a positive attitude

      • Caliber: The work produced is of a consistent high quality

Forum moderators - Sarina

Forum moderators have the “moderator” capability in the Open edX forums. Additionally they may serve as Community TAs for one or more courses hosted on a Axim-hosted Open edX instance.

...

  • Responsibilities:

    • Re-Categorize new topics

    • Remove spam posts/ban spam users

    • Organize older topics as needed/maintain the platform

    • Respond to topics with high quality answers - pointers to documentation, referral to other users, etc

  • Access:

    • (for regular forum) Moderator role on discuss.openedx.org

    • Do we still use the (for regular forum) Access to #discourse-moderators Open edX Slack channel? if so: add to that channel.

  • edX requirements:

    • Open Question: Forum moderators will not be exposed to any edX internal details - we will rely on them to be independent operators, much like a volunteer moderator on any other internet forum (like Reddit, StackOverflow, etc)

      • However, if they need to sign an NDA, they should take the Privacy course

      • Since accessibility is not a concern on the Forums (the Discourse software takes care of a11y), we do not recommend they take the a11y course.

P3. Open edX Named Release Managers (BTR) - Sarina

  • Responsibilities:

    • Active membership in the BTR guild

      • Attends BTR meetings regularly

      • Responsive in the #wg-build-test-release Open edX slack room

    • Maintains the BTR GitHub projects board

    • Takes on the burden of either making fixes or finding appropriate parties to address them

    • Maintain Named Release branches across 30+ key repositories, both the latest and any previous supported releases

    • Manage merging fixes into these branches

    • Manage the release of release candidates and point releases, for both the latest and any previous supported releases

  • Access:

    • Added to appropriate bot allowlist that gives write access to named release branches only (but needs overall write access to all code repos)

    • in Open edX Slack

    • (for Community TAs) Community TA permissions on one or more Axim-produced Open edX courses

  • Requirements for nomination

    • At least 6 months of consistent forums presence and high quality answers

    • Per the definition of the Core Contributor program, a demonstration of the “3 C’s”:

      • Commitment: Has shown ongoing work in the Product space for the Open edX community

      • Conduct: In written and verbal communication, is welcoming to all, provides helpful feedback, and overall maintains a positive attitude

      • Caliber: The work produced is of a consistent high quality

Content Authors - Sarina

This role refers specifically to those community members with authoring permissions on a Axim-hosted Open edX instance.

Please note: The Course Author role is separate and distinct from the Course Administrator and Course Data Manager roles, and there is explicitly no guarantee that a Course Author will be approved to serve as an administrator or data manager on any given course, including a course that they authored.

  • Responsibilities

    • Author content for one or more Axim-produced courses

  • Access

    • Studio (authoring) access to one or more Axim-produced courses in the Axim Open edX instance

  • Requirements for nomination

    • Per the definition of the Core Contributor program, a demonstration of the “3 C’s”:

      • Commitment: Has shown ongoing work in the Product space for the Open edX community

      • Conduct: In written and verbal communication, is welcoming to all, provides helpful feedback, and overall maintains a positive attitude

      • Caliber: The work produced is of a consistent high quality

Course Administrators

This role refers specifically to those community members with admin permissions for one or more courses on a Axim-hosted Open edX instance. Admin permissions are defined as permissions which allow you to view sensitive learner information such as learner email addresses, learner course grades, and problem submissions. A person with an in-course designation of “Community TA” does not fall under this umbrella but rather would fall under the “Forum moderators” CC distinction.

  • Responsibilities

    • Perform administrative tasks for such courses, including but not limited to responding to learner requests and managing course bulk email

  • Access

    • Course team member or course admin level permissions in the LMS

    • If needed/desired, Discussion moderator access (grants “Staff” badge in course forums)

  • Requirements for nomination

    • Per the definition of the Core Contributor program, a demonstration of the “3 C’s”:

      • Commitment: Has shown ongoing work in the Product space for the Open edX community

      • Conduct: In written and verbal communication, is welcoming to all, provides helpful feedback, and overall maintains a positive attitude

      • Caliber: The work produced is of a consistent high quality

Code contributors - Sarina

The right to commit code directly to the Open edX project is not granted lightly. Please see the following set of pages which dives deeper into the rights and responsibilities of an Open edX code contributor: Coding Contributors Materials

Release Manager - Sarina

See discussion thread about new role

A release manager is elected by the BTR group for a six-month period; this person should already be a coding CC.

  • Responsibilities:

    • Perform release management for BTR (for both the new release as well as maintenance of the previous release) in any and all repos that are defined as part of the Open edX named release for that iteration.

      • Reviewing and merging patches

      • Cutting new release branches - and amending them as needed

  • Access

  • Requirements for nomination

    • A coding CC

    • This role would be elected by the BTR group, as is currently done - and as part of the election, a nomination thread is put in this forum with the clear indication that BTR approves the choice. This thread has a shortened 1-week review period

What are a Core Contributor’s access & responsibilities?

CCs may need access to…

  • Internal 2U/edX tools

    • Various Google docs/sheets (WG members/Project mgrs/PMs/UX)

    • Design Tools

      • Figma (PM/UX)

      • Miro (PM/UX/QA/Project mgr)

      Transifex admin (Translators
      • )

    • Committer access to documentation repos (docs)

    • Admin access to marketing sites/materials (marketing WG)

  • Tools that already have access but we should be sure are set up

    • Appropriate Jira/Confluence access - may involve some access to currently-private spaces

    • Shared Slack channels

...

Should we adopt a “Champion” model?

  • Could have a Champion (essentially point of contact & advocate) per role type - thinking

    • Sarina could champion Translators and perhaps Documentation as well

    • CE team generally sponsors QA

    • Internal marketing (Eden?) could champion Marketing WG

    • Someone on Stacey’s team would champion UX/UI

    • Unknown who might champion Project Managers - likely Natalia for the OSPR project manager

    • Product managers need individual championsThe Transifex Working Group with assistance from Eden will serve as champion for and oversight of Translators.

    • We could build out a QA function organically and have a QA Working Group oversee team efforts

    • Marketing WG with assistance from Eden serves as champion/oversight of Marketing CCs

    • UX Core Contributors will work alongside a 2U/edX “champion”

    • Project managers will likely not need champions, but rather points of contact at Axim and possibly within other community member orgs necessary to carry out their work

    • Product managers will work alongside a 2U/edX or Axim “champion”, likely the person they work most closely with for a given project Other WG members would be championed by the edX-er most involved in that WGor someone acting in a bit of a mentorship-like capacity

For certain, the 2U/edX UX & Product Management teams would like their CCs to have a champion.designated point of contact/mentor within the building, in order to advance a consistent platform product vision (for example, adhering to style conventions like Paragon)