Language Requirements
Ensuring that our codebase is consistent, accessible, and maintainable is a priority. One aspect of this is the language used within the code. Below are our standards and expectations regarding language use in coding.
English Language Compliance
All code, including comments, documentation, and variable names, MUST be in English. This rule ensures that our code is understandable by an international team of developers and maintains consistency throughout the codebase.
Exceptions to English Language Use
In scenarios where the use of non-English terms is necessary, such as when dealing with domain-specific terms, localised content, or when integrating with systems that require non-English identifiers, these exceptions are permitted but MUST be documented appropriately.
Example of Documented Exception
Consider a scenario where we are developing software that integrates with a German tax system, which requires the use of German terms for legal compliance.
# German term used for legal compliance with the Tax Office ("Finanzamt")
steuerIdentifikationsnummer = "DE999999999"
In the above example, steuerIdentifikationsnummer is a German term that is used as a variable name for compliance reasons. This exception is documented in the comment above the code line, explaining the necessity of the non-English term.
Documentation for Non-English Terms
When non-English terms are used, accompanying documentation must:
Clearly explain the term's meaning in English. Justify the necessity for its use. Provide a pronunciation guide if the term is difficult to pronounce for English speakers. This approach ensures that all team members, regardless of their native language, can understand and work with the code.