Useful organizational skills in software development: - Name things well -...
Useful organizational skills in software development:
- Name things well
- Group related things together
- Keep unrelated things separate
- Avoid repeating yourself
- Document the "why"
- Be consistent
- Solve big problems with small, composable solutions
So, using inverse thinking, "bad" code is characterized by:
- Poor naming
- Unrelated things grouped together
- Related things far apart
- Copy/pasted logic
- Undocumented assumptions
- Inconsistent structure
- Global values
- Unpredictable side-effects
- Monolithic solutions