Skip to content


There's plenty of jargon that goes around which may overwhelm a newcomer. See edX's glossary for any terms that may not be listed here.

If you feel there's a piece of lingo that is neither covered by edX's glossary nor by this document, let us know, or open a merge request to add it in.

A note on entries: We try not to create new acronyms. We do use standard industry acronyms. Acronyms seriously suck. We have enough terms to memorize-- so try to avoid introducing new acronyms and encourage others to do the same.


A custom LMS front-end, used by one of our clients (Yonkers). It replaces the standard Open edX LMS front-end.


Calendly is a handy web service that allows you to share a link so that people can easily choose a time for a meeting based on your availability. See Calendly's homepage. The Administration Specialist can create a Calendly account for any team member upon request.

Code drift

This refers to changes in forks that aren't present in upstream. Code drift must be maintained (ported, tested, sometimes rewritten) across new release versions, and so adds to our maintenance costs. OpenCraft aims to minimize code drift by upstreaming as much as possible and consolidating the rest into common branches that are shared among several client sites.


Software that stores current infrastructure information and configuration. It allows us to configure various services across dynamic and distributed infrastructure. See Consul's homepage.

Customer Lifecycle

The customer lifecycle is the path a prospective customer takes from a lead to a paying customer. See the sales documentation.


In-house Jira bot used to simplify some actions like filling spillover reason to a Google Spreadsheet directly from Jira. See Crafty' repository.


Customer Relationship Manager. A CRM is where we track sales leads and current clients. Check the list of current clients and read about them here, and our current sales leads here.


The process of "discovering" the set of tasks from client requirements. This is usually the first step when an epic is created. A completed discovery involves scoping the tasks, making time estimations, and assessing the level of effort needed for the work.


A software stack composed of Elasticsearch, Logstash and Kibana. This stack is moslty used to store logs, metrics and to create dashboard. We are actually using the ELK stack for See ELK's homepage.


A big chunk of work that has one common objective. It could be a feature, customer request or business requirement. These would be difficult to estimate or to complete in a single iteration. Epics contain smaller tasks meant for iterative completion over one or more sprints.


A firefighter is a sprint's facilitator. The firefighter's responsibilities include handling emergencies, attempting to unblock people, watching over potential spillovers, and more.


Gandi is a French company providing domain name registration, web hosting and related services. We are using it as our DNS provider. See Gandi's homepage.


Short for "General Data Protection Regulation". This is a regulation in European Union law on data protection and privacy in the EU. See GDPR's Wikipedia page.


Honcho is a handy Python tool used to run Procfile files. Honcho is actually used by Ocim. See Honcho's homepage.


Short for "Independently Deployable Application". These are separate applications which may integrate with Open edX via APIs or by sharing authentication.


Institutional customers, as opposed to Pro & Teacher customers, are customers that have signed up for higher tier Institutional Plan with a stronger SLA, more flexible feature options, and a Client Owner. Typically, these are larger organizations looking to use the full power of the platform. Institutional customers frequently work with us to create new and custom features.


A sales lead is a potential customer. See the customer lifecycle.

Lead Prioritization Rubric

The Lead Prioritization Rubric is the tool used for evaluating the priority of different leads we might pursue. See Lead Prioritization.


Learning Management System


Open-source instant messaging tool that OpenCraft uses for internal communication, hosted at See Mattermost's homepage.

New Relic

Web service used to store software metrics and errors. See New Relic's homepage.


Short for "OpenCraft Instance Manager". It's our in-house, open source deployment service for Open edX instances, which:

  • Manages configuration and automates deployments for client production sites.
  • Provides continuous integration by watching our PRs against the edx/edx-platform repository and automatically spinning up a sandbox for the PR's version of the platform. See how to spin up sandboxes1 and the Ocim documentation.


Atlassian tool used to alert and page team members in case of incident. See Opsgenie's homepage.


Short for "Open Source Pull Request". This is the edX process for reviewing pull requests from the open source community.


The OpenStack-based cloud computing service we use to host OCIM VMs and more. See OVH's homepage.

Pro & Teacher

Pro & Teacher was the name of our SaaS offering of the Open edX platform. Pro & Teacher clients were clients that had registered on our website and had an instance automatically created for them. We included basic features, maintenance and backups. Please DO NOT abbreviate this to "P&T." If you must use shorthand, use "Pro Plan." See this notice on acronyms.

In the latter half of 2022, the Pro & Teacher plan was discontinued to allow our team to focus on our niche of providing premium Open edX development and support services.


Also known as "story points", these represent the approximate "level of effort" and time a task would require. See Task Workflows for a description of how we use points. The cells collectively vote on story points for the tasks in the upcoming sprint, see Process for sprints for details.


Database used to store metrics which can also be used for alerting, hosted at See Prometheus's homepage.


A formal document (or set of documents) delivered to a client detailing the work to be done and the cost of performing that work.


Request for Proposal. Especially large or organized companies that want a project done will publish a document specifying their needs for a particular project. Companies (such as ours) are encouraged to create a proposal in response to this request for their consideration. If they accept our propsosal, they become a paying customer. See also: tender


In sales, qualification is the process of determining whether a lead is a good fit for our team. Factors which impact whether a lead qualifies include budget, willingness to engage in open source methodologies, and more. See Lead Prioritization.


See Proposal.


Represents an environment that should be isolated from the production one. It allows us to test things without potentially breaking the production. This term could refer to Ocim instances1 created to test pull requests.

Scope of Work

A Scope of Work document (commonly abbreviated SoW or SOW in most contracting industries) is a document detailing the work that a contracted team will be performing for a project. It includes milestones, deliverables, and other information on how the project is to be managed and delivered.

In most cases, we use our Discovery documents and proposals in place of a Scope of Work, but sometimes a client requests a Scope of Work in a specific format, usually as part of responding to an RFP or Tender.


Also know as "user story", is a specific Jira ticket that represents a user need or a specific scenario. This is the most common Jira ticket type we are using.


A tender is a highly formalized request for propsal published by a government entity. Most tenders require the use of an intermediary company incorporated within their country to act as a middle-man for these proposals. Tenders are best bid on when we have assisted in their creation, or have been contacted ahead of time by the entity planning to publish one.

Task estimation / Agile poker

Also know as "planning poker" or "Scrum poker" is a gamified technique for estimating tasks. We are exclusively using the agile-poker Jira plugin for our estimation session.


Atlassian's tool to track time which is integrated with Jira. We use it to log time against Jira tickets and track epic budgets. . See Tempo's homepage.


Maximum amount of time allocated to a task -- going over the timebox is not permitted. If it looks like there is a risk of going over the timebox, ping Braden and/or the epic owner to discuss.

We sometimes also use timeboxes to manage our sprint commitments. For instance, if a task needs to be started during a given sprint, but the assignee does not have time to complete it, we may timebox the task to a maximum amount of hours for the current sprint, and complete the remaining work during the next sprint. Because this affects sprint commitments, this type of task timeboxing must be decided before the sprint begins, and agreed to by the epic owner.

  1. Private for OpenCraft Employees 

Last update: 2023-10-16