- Discuss topic with group during regular developer meeting or open a GitHub issue to begin discussion
- If discussed during the meeting, someone on the team should capture notes in a GitHub issue discussion and supply a few code examples for further "offline" discussion
- The developer responsible for the topic creates a pull request to this repo with changes or additions reflecting the consensus of the group
We use these as a lens with which to examine potential best practices:
- Elegance - We design and build beautifully elegant applications and websites, this beauty should extend to the codebase as well.
- Speed - We move quickly. We hit our milestones. We ship.
- Pragmatism - We are pragmatic in our solutions. We don't over-engineer things. No reinventing the wheel. No yak shaving.
- Maintainability - We maintain relationships with projects over years. This means we write maintainable code: well organized, well documented, well supported.
- Innovation - We look for opportunities to experiment with emerging technologies and techniques. We learn.
Also see the Pragmatic Programmer Quick Reference Guide for additional rules to code by.