Guides for getting things done, programming well, and programming in style.
Every line of code should appear to be written by a single person, no matter the number of contributors.
High level guidelines:
- Be consistent
- Don't violate a guideline without a good reason
- A reason is good when you can convince a teammate
- When a new guideline is introduced, don't rewrite existing code to follow it
- When a change in a guideline breaks an existing one or requires lot of code changes, it should be followed only in the next version of software
- If a guideline conflicts with other existing guides then treat the one in this guide as final
A note on the language:
- "Avoid" means don't do it unless you have good reason
- "Don't" means there's never a good reason
- "Prefer" indicates a better option and its alternative to watch out for
- "Use" is a positive instruction
- "Always" indicates the best option