/
Naming Things
Naming Things
“There are only two hard things in Computer Science: cache invalidation and naming things”
Phil Karlton
When writing software, we often find ourselves needing to name things: files, classes, variables, GitHub repositories, Python packages, etc. As noted above, doing this well is hard; a programmer can easily pick a name that solves the immediate problem, but many such well-intended choices can be confusing or misleading to other people coming from different contexts (or after some time has passed, even to the programmer who named it). A comprehensive set of guidelines on how to name things well could fill an entire book, but here are some guidelines that are likely to be useful to developers at edX.
- Python Naming Conventions - As stated in the edX Python Style Guide, we follow PEP 8 in this context
- JavaScript Naming Conventions - As stated in the edX JavaScript Style Guide, we follow the Airbnb JavaScript Style Guide in this context
- IT's Best Practices for Naming - This has some good general guidelines, and some specific considerations for JIRA artifacts and such.
- Package Names - If the project is edX specific, use the "edx-" prefix. Don't use it if it the scope is more general (for example tools like "bok-choy", "diff-cover", etc.) Earlier discussion of this topic: Standards for Engineering, Coding, Repository
- Repository Names - The name of our GitHub organization is "edx", so it's redundant to add "edx-" to the package name as well. It's OK if this means that a repository without "edx-" in its name produces a Python package which does have it.
, multiple selections available,
Related content
Open edX REST API Conventions
Open edX REST API Conventions
Read with this
edx-platform Repository Overview
edx-platform Repository Overview
More like this
Git Best Practices
Git Best Practices
Read with this
Tools and Technology Standards
Tools and Technology Standards
More like this
Everything About Database Migrations
Everything About Database Migrations
Read with this
Taxonomy
Taxonomy
More like this