I’ve accumulated a number of great constraints over the moderate time I’ve been involved with katas. With Cincy Clean Coders and Dayton Clean Coders new constraints keep coming both creative participants and crazy things I pull from the morass between my ears. I can’t imagine this will stop for reasons I’ve already mentioned.
To help me keep track of them and to help others I’m going to catalog them here.
- Methods no more than 3 lines
- No mouse
- No moving cursor more than 2 lines with the arrow keys
- Test Method names at least 40
- All methods/properties names at least 30 characters
- No Classes
- No Mutable State
- No Exposed State
- 3 Refactorings after each passing test
- No If, Else, Switch Statements
- TDD as if you mean it
- No Frameworks
- No IDE
* Replace any number with your preference
If you have ideas for others, put them in the comments and I’ll update the list.