edX Glossary
A glossary of Open edX and 2U/edX acronyms and other commonly used lingo, with a focus on edX-specific terms. The intention is to be able to refer to a non-human resource when trying to find an explanation for a word you may not know and web/wiki search doesn't help. Feel free to expand, add, or request a definition. Also, feel free to suggest a definition format.
Words can have different meanings in different contexts, or we might have extra details in the edX context. The context is given in square brackets. “[Industry]” means the definition is industry-wide rather than specific to edX.
Words in bold are defined elsewhere in the Glossary.
If the word you are looking for isn’t here, add it to the Terms Needing Definition list at the end, or just leave it as a comment.
A companion page exists here: http://edx.readthedocs.io/projects/edx-developer-guide/en/latest/glossary.html
Additional content created here as well: https://docs.google.com/a/edx.org/document/d/1ASZAi4uEuDwQLKjgCqrVT4uWh7yCk4h7G7K8JtOTo1s/edit?usp=sharing
Term | Area | Definition |
---|---|---|
ABM | Marketing | [industry] Account-Based Marketing (link) |
ACE | edX | “Automated Communication Engine”: a facility for sending emails and other notifications. https://github.com/edx/edx-ace |
ADR | edX Eng | [Industry] “Architectural Decision Record”. A short document describing a technical design decision. [edX] They are stored alongside the code they describe. https://open-edx-proposals.readthedocs.io/en/latest/oep-0019-bp-developer-documentation.html#adrs is the OEP describing our ADR process. |
Alton | Eng | [edX] A bot that sits on Slack and can run management commands for us via @alton tag. Can be useful to find out what code is live in prod. |
AMI | Eng | [Wikipedia] “Amazon Machine Image”. An Amazon Machine Image (AMI) is a special type of virtual appliance that is used to instantiate (create) a virtual machine within the Amazon Elastic Compute Cloud ("EC2"). It serves as the basic unit of deployment for services delivered using EC2. An AMI represents all the software that needs to run on an Amazon Cloud machine. ‘Building an AMI’ means creating a full stack, from operating system and services all the way up to apps, in order to start it running on a new AWS server. [edX] We use AMIs to deploy most of the applications served by edX to power edx.org |
Ansible | Eng | [Industry] Ansible is an automation tool used in our continuous delivery/release pipeline. A tool to automatically run scripts to build up a new server. |
APAC | Marketing | [industry] Asia Pacific (Wikipedia) |
AOV | Finance | [industry] Average Order Value tracks the average $ amount spent each time a customer places an order. (link) |
ARR | Finance | [industry] Annual Recurring Revenue |
ASG | Eng | [Industry] “Auto-Scaling Group” A collection of machines at Amazon (our cloud) that grows and shrinks as needed to meet demand. |
ASP | Finance | [Industry] Average Selling Price (link) |
AWS |
| [Industry] “Amazon Web Services”. [edX] It’s where we host all of our applications and servers in the cloud. |
Blended Development | Eng | [edX] A project style with edX direction and funding. The work is completed with a blend of edX and external engineering. |
Branch | Eng | [Industry] A git term: A set of related code files that represents a version of a software package. The main branch of a repo is usually called “master” or “main”. Each branch represents a set of changes relative to that master or another branch. Branches can be tiny (a single developer working on a single file) or huge (each community release of the Open edX platform is represented as a branch with thousands of files). If the branch is really big, and someone else is taking over the new branch, this is called a ‘Fork' |
BRN | edX | Business Resource Network (similar to ERG) |
BST |
| ? “Buy-Sell-Trade”? |
CAB | edX | [edX] Corporate Advisory Board |
CAC | Finance | [industry] Customer Acquisition Cost is the cost of winning a customer to purchase a product/service. As an important unit economic, customer acquisition costs are often related to customer lifetime value (CLV or LTV). (link) |
CAT-1, CAT-2, etc | eng | The priority of the ticket - See here for the more information on the definitions and organization of the ticket priority |
CAPA | edX Eng | “Computer-Assisted Personalized Approach”. A "CAPA problem" usually refers to a common problem type (like multiple choice) which has features like hints, reset, and show the answer. The name comes from the LON-CAPA system (an open source learning platform from MSU), which we copied much of the file format from. |
CMS | Learning | [Wikipedia] “Content Management System” A content management system (CMS) is a computer application that allows publishing, editing, and modifying content, organizing, deleting as well as maintenance from a central interface. Such systems of content management provide procedures to manage workflow in a collaborative environment. These procedures can be manual steps or an automated cascade. CMSs have been available since the late 1990s. [edX] CMS usually refers to edX Studio or http://studio.edx.org |
Codejail | edX Eng | [edX] The service that executes instructor-written or student-written Python code for Python-graded problems. It provides security so that untrusted code can be executed safely. Codejail errors are errors that occur in the Python evaluated input problem in the LMS. If you're seeing this error it means that students are attempting this class of problems but the python code that the instructor wrote to evaluate the answer is failing in some way. If the problem uses too much real time (runs too long), it ends with a status of -9, and there is a clear log message indicating that we are killing it. If it runs out of memory, it ends with a status of 1 or -9, depending on how quickly the process hits the limit. In that case, AppArmor kills the process. |
Cohort | Learning | [Industry] A group of learners who participate in a class together. Learners who are in the same cohort can communicate and share experiences in private discussions. Cohorts are an optional feature of courses on the edX platform. |
Common Cartridge | Learning | [Industry] An IMS standard for course content. [edX] We have a tool for importing Common Cartridge content into edX courses. |
Contentful | Eng | [Industry] The CMS product that powers the edx.org homepage and marketing sites. |
course_id | edX Eng | [edX] A unique identifier of a course. The course_id is the same as a course.id where course is a Course object. There are two types of course_ids. (Insert explanation of the two types split vs mongo). Old course_id format: {school}/{course}/{run} Example: edX/DemoX/Demo_Course New course_id format: course-v{version number}:{school}+{course}+{run} Example: course-v1:MITx+6.00.2x_3+1T2015
|
course_key | edX Eng | [edX] Refers to base For details on construction, see https://github.com/edx/edx-platform/wiki/Opaque-Keys-(Locators) |
CPS | edX | “Content and Partner Support”: the edX department responsible for relationships with partner institutions, and content acquisition. Used to be called Ed Services. |
CR | edX | Customer Request. For more info see https://openedx.atlassian.net/wiki/pages/createpage.action?spaceKey=CR&title=Customer%20Request%20Process%20Documents |
cs_comments_service | edX Eng | [edX] The cs_comments_service is a separately deployed service for the edX forums written in Ruby. |
CSOD | edX Eng | Cornerstone on Demand |
CSR | Business | [industry] Corporate Social Responsibility (link). |
CSS | Eng | [Industry] The web language that defines the styling for web pages: fonts, colors, layouts, etc. |
CTA | Eng | Call to action |
DDT | Eng | [Industry] DDT (data-driven tests) is a 3rd party Python library that edX uses to run the same unit tests repeatedly with different input data. It provides a more readable output on failures to find errors than simply running the tests in a loop. |
DE | edX | [edX] Data Engineering. See DE team wiki space |
Django | Eng | [Industry] The web application framework that powers course delivery on edx.org. |
django_comment_client | edX Eng | [edX] The django_comment_client is an application in the edx-platform repository responsible for communicating with the separately deployed cs_comments_service. The discussion API and the browser forums send their forums requests to the django_comment_client which then in turn sends those requests to the cs_comments_service which is written in Ruby. |
Drupal or Drupal Site | Eng | [Industry] Drupal is a CMS (content management system) software. [edX] At edX, we used to use Drupal to run the http://edx.org website. It is separate from the courses.edx.org website where our LMS edx-platform is served. This separation enables the marketing side of the website to make updates that are not edx-platform related and unrestricted to the release cadence. Drupal was retired at edX in September 2020. |
DS&A / DSA | edX | [edX] Data Science & Analytics. See DS&A team wiki space |
DSL (Jenkins) | Eng | DSL in terms of the Jenkins world stands for "Domain Specific Language" which "allows users to write Job DSL scripts in a groovy-based language." More details can be found here: https://github.com/jenkinsci/job-dsl-plugin/wiki/Jenkins-Job-DSL-Architecture |
DSC | Eng | Data Sharing Consent |
Duck Punching | Eng | Duck punching is to change the default behavior of something. If it walks like a duck and talks like a duck, then it's a duck – but if you don't like the sound it makes, you keep punching it until it makes the sound you want. In dynamic languages (such as Python) you can alter key components to make them do something different to make it appropriate for your code. See also Monkey Patch |
Ed Services | edX | “Educational Services” is the old name for the CPS department. |
EDC | edX | “Environment, deployment, and cluster” A subsection of our AWS world to deploy to (for example, stage-edx-ecommerce) |
edx_video_id | edX Eng | A unique identifier for a video asset. A video can have multiple encodings but will have the same edx_video_id. An edx_video_id is assigned when a video is uploaded through the video pipeline. Course authors can then use this edx_video_id to select videos in the studio.
|
ECE | edX Eng | Enterprise Course Enrollments |
ECS | edX Eng | Enterprise Customer Success |
ERG | edX | Employee Resource Group |
ESRE | edX | [edX] The “Embedded Site Reliability Engineering” team. |
Framework | Eng | [Industry] A publicly available code library or platform that implements common behavior needed by many applications. For example, Django is a web application framework that underpins many websites. |
GA (Google Analytics) | Eng | [Industry] GA is the acronym for Google Analytics. Google Analytics is a freemium web analytics service offered by Google that tracks and reports website traffic. |
git | Eng | [Industry] A tool for storing and versioning files, usually program source code. |
GitHub | Eng | [Industry] A website where many open source projects keep their code. edX uses GitHub to store, update, distribute, maintain, review, and document all of its software, including its private code. GitHub provides git services. |
GoCD | Eng | [Industry] A continuous deployment tool. An automation tool that allows code packages to be built and deployed to Amazon automatically. [edX] The service that deploys code to production. “The GoCD pipeline” is a series of steps for packaging and deploying the code. |
GTA | edX | [edX] Grades, Teams, and Assignments – a squad in the Programs theme. |
HLS | Eng | [Industry] HTTP Live Streaming breaks down the overall stream into a sequence of small HTTP-based file downloads, each download loading one short chunk at a time. As the stream is played, the client may select from several different alternate streams containing the same material encoded at a variety of data rates. (e.g., Quality settings in a youtube video: 480p, 720p, 1080p) |
IDA | Eng | Independently Deployable Applications. IDAs are separate applications that make the edX platform into a set of micro-services. The top-level application has a different code repository than other IDAs. Its top-level code can be changed and deployed without affecting other IDAs. An IDA typically shares base Python modules with other IDAs, yet it remains separate from other IDAs. |
IMS | Learning | [Industry] “IMS Global Learning Consortium”. The technical organization behind ed-tech standards like LTI and Common Cartridge. [edX] edX is a member of IMS. |
Jenkins | Eng | [Industry] An automation tool which allows standard tests or actions to be run at the click of a button or an API call. For instance, some of our code tests are run on Jenkins once a pull request is opened on GitHub. We also use it to create new sandboxes and other devops needs. |
JWT | Eng | JSON web token (pronounced JOT) |
KPI | Finance | Key performance indicators (KPIs) refer to a set of quantifiable measurements used to gauge a company’s overall long-term performance. KPIs specifically help determine a company's strategic, financial, and operational achievements, especially compared to those of other businesses within the same sector. (link) |
LMS | Learning | [Wikipedia] “Learning Management System” A learning management system (LMS) is a software application for the administration, documentation, tracking, reporting, and delivery of electronic educational technology (also called e-learning) education courses or training programs. [edX] LMS in our case usually refers to the edX platform or http://courses.edx.org |
LTI | Learning | [Industry] “Learning Tools Interoperability” An IMS specification that connects learning systems, such as a learning management system (LMS), with external service tools in a standard way across learning systems. Learn more at IMS Global, the consortium that supports this standard and certifies products leveraging LTI. (e.g., leveraging a Blackboard collaboration tool in an edX course.) |
LTV | edX | [edX] Lifetime Value |
Mako | Eng | [Industry] Mako is a 3rd party Python template language that edX uses in a variety of different ways. |
MAU | Finance | [industry] “Monthly Active Users” is a key performance indicator (KPI) used by social networking and other companies to count the number of unique users who visit a site within the past month. Websites generally recognize monthly active users via an identification number, email address, or username. (link) |
MFE | Eng | Micro-frontend |
Micro-frontend | Eng | [Industry] An implementation of a single portion of a web application as a separate component. (link1, link2) |
MQL | Marketing | [industry] Marketing Qualified Lead (link) |
Milestones | edX Eng | A feature in which there are milestones that are set to be 'required' that will do a specific action (such as blocking content) if that milestone has not been 'fulfilled'. You can either set a milestone to either `require` or `fulfill`, thus milestones that are required can be fulfilled. More documentation here https://github.com/edx/edx-milestones. An example would be an entrance exam which uses the milestones feature. A course will 'require' an entrance exam and unless the student 'fulfills' the entrance exam, the student is blocked from viewing the course content. |
moat | Finance | An economic moat is a distinct advantage a company has over its competitors which allows it to protect its market share and profitability. It is often an advantage that is difficult to mimic or duplicate (brand identity, patents) and thus creates an effective barrier against competition from other firms. (link) |
Monkey Patch | Eng | [Wikipedia] A Monkey Patch is a way for a program to extend or modify supporting system software locally (affecting only the running instance of the program). See also Duck Punching |
MOOC | edX | Massive Online Open Courses, basically us and other large-scale online learning platform |
MVP | Product Delivery | [Industry] A “Minimum Viable Product” has just those core features sufficient to deploy the product and no more. |
New Relic | Eng | [Industry] Accessible at newrelic.com, this website is a SasS for software analytics. Analytics information can be obtained from the website such as response times, CPU load, transaction data, error logs, and more. New Relic for edX is connected to production, stage, edge, and loadtest environments for monitoring their status. Details on how to gain access are on the developer onboarding page. |
OCE | edX | Online Campus Essential |
OEP | edX Eng | [edX] “Open edX Proposal” See http://open-edx-proposals.readthedocs.io/en/latest/oep-0001.html for a full description. Summary: OEP (pronounced “oh-epp”) stands for Open edX (Enhancement) Proposal. An OEP is a document that details a specific technology decision being made by the Open edX community, in the form of a best practice, architecture design, or process adjustment. An OEP should provide the use cases and rationales that surround that choice. OEPs are not the only way for a change to be made to Open edX, however, the goal is to create a collection of OEP documents as a repository or knowledge archive of large and broadly relevant choices made for the platform. |
Opaque keys | edX Eng | Opaque-keys provide the ability to create and introspect course and xblock identities through a clear and consistent API. See the code's docstrings for more information. See the edx-platform wiki documentation for more detail. |
ORA | Learning | |
OSPR | Eng | “Open Source Pull Request” A pull request that is submitted by someone that is a part of the broader open source community and not an employee of edX. |
Piñata | edX Eng | [edX] (just a real piñata) We have a tradition of celebrating the removal of major obsolete components with a piñata. |
PM | edX | [edX] In Ed Services this means Partner Manager - used to mean Program Manager [edX] In Product or Engineering this means Project Manager or Product Manager |
prod / production | Eng | The set of servers running our live sites, edx.org |
Pull Request | Eng | [Industry] A request to ‘pull’ a set of code changes (a commit) from one branch to another. When a developer wants to change code, they create a pull request, which can then be reviewed, approved, and merged into the master branch. |
RCA | Agile | [Wikipedia] “Root Cause Analysis” - a method of problem solving used for identifying the root causes of faults or problems. |
RFM | Marketing | [industry] “Recency, Frequency, Monetary Value” (link) |
ROW | Finance | [industry] “Rest of World” |
Sass | Eng | [Industry] A more convenient language than CSS for defining web page styling. |
SCORM | Learning | [Industry] “Sharable Content Object Reference Model” An ed-tech interoperability standard created by the US government: https://adlnet.gov/projects/scorm/ It includes a standard for course content. |
SFE | edX Eng | [edX] “Studio Frontend” A new React/Redux repo for an updated front end for Studio |
Course Hierarchy: | edX | Section: The highest organizational wrapper for content in edX courses. (ex: Week 1) |
SLO | Eng | “Service Level Objectives” |
SQL | Marketing | [industry] “Sales Qualified Lead” (link) |
SQL | Eng | [Industry] “Structured Query Language” A programming language used to write database queries. |
stage / staging |
| A set of servers we use to test versions of software before they go to production. |
Tableau | Eng | [Industry] Tableau is edX’s primary enterprise reporting tool. Tableau has two sub-tools: Tableau Server is an online tool that allows sharing of visualizations and some data exploration, and Tableau Desktop is a desktop-based tool for power users. More info: https://openedx.atlassian.net/wiki/pages/createpage.action?spaceKey=DATA&title=Tableau%20license%20policy |
Toggle | Eng | A flippable switch in our code that we can use for enabling and disabling a feature or behavior at run-time. Also known as: Feature Toggle |
TTM | Finance | [industry] Trailing 12 Months (link) |
usage_id | edX Eng | [edX] An identifier (unique?) for an XBlock. Format: i4x://{course_id}/{block_type}/{block_id?} Example: i4x://edX/DemoX/problem/c554538a57664fac80783b99d9d6da7c
|
USP | Marketing | [industry] Unique Selling Point or Unique Selling Proposition (link) |
VAT | Finance | [industry] Value-Added Tax (link) |
VideoLocker | edX | [edX] The original name for the mobile application which was outsourced to Clarice. The original mobile application only allowed a student to view the videos in a course. |
VUD | edX | [edX] Verified Upgrade Deadline |
Waffle | Eng | [Industry] A Python library for implementing run-time flippable switches. See also: Toggle |
XBlock |
| [edX] EdX’s component architecture for writing course components: XBlocks are the components that deliver course content to learners. Third parties can create components as web applications that can run within the edX learning management system. |
Terms Needing Definition & Addition:
Alton
FBE
Modulestore
Contentstore
Org/Course/Run
Acceptance Tests
Gevent
Eventlet
Greenlet
Co-routines
WSGI
EASE
CRUD
Upsert
Optimizely
JMeter
SEO
XModule
XModuleDescriptor
Memoize
AMD
require.js
Semantic Versioning
Acid XBlock
YAML
HAR file
Paver
Rake
Vagrant
Jenkins
BokChoy
GridFS
gunicorn
nginx
Jasmine
JSHint
IOPS
Splunk
New Relic
otto
RTL
FedX
Segment
HubSpot
ZenDesk
prod
snowflake
stitch
vertica
ubuntu
Kubernetes
Atlantis
Terraform