Too ManyResponsibilitiesSwitchStatementAbuseCommentsExplainingCodeCatchingexceptionsand loggingonlyMultipleReturnPointsErrorcodesinstead ofexceptionViolatesCommand-QuerySeparationDeepNestingToo manyarguments(>3)CodeDuplicationNon-searchablevariablenameMissingsummarycomment ona publicmethodmissinglegalcommentsDependentfunctionsare farapartUseof punRequireshorizontalscrollingCommentedOut CodeConfusingNamingLongMethodvariabledeclaredfar fromits usageMessageChains –a.b().c().d()trainwreckverticalopennessbetweenconceptslargefunctionswith nestedstructuresUnpronounceablenamingToo ManyResponsibilitiesSwitchStatementAbuseCommentsExplainingCodeCatchingexceptionsand loggingonlyMultipleReturnPointsErrorcodesinstead ofexceptionViolatesCommand-QuerySeparationDeepNestingToo manyarguments(>3)CodeDuplicationNon-searchablevariablenameMissingsummarycomment ona publicmethodmissinglegalcommentsDependentfunctionsare farapartUseof punRequireshorizontalscrollingCommentedOut CodeConfusingNamingLongMethodvariabledeclaredfar fromits usageMessageChains –a.b().c().d()trainwreckverticalopennessbetweenconceptslargefunctionswith nestedstructuresUnpronounceablenaming

Spot the Smell Bingo!!! - Call List

(Print) Use this randomly generated list as your call list when playing the game. There is no need to say the BINGO column name. Place some kind of mark (like an X, a checkmark, a dot, tally mark, etc) on each cell as you announce it, to keep track. You can also cut out each item, place them in a bag and pull words from the bag.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  1. Too Many Responsibilities
  2. Switch Statement Abuse
  3. Comments Explaining Code
  4. Catching exceptions and logging only
  5. Multiple Return Points
  6. Error codes instead of exception
  7. Violates Command-Query Separation
  8. Deep Nesting
  9. Too many arguments (>3)
  10. Code Duplication
  11. Non-searchable variable name
  12. Missing summary comment on a public method
  13. missing legal comments
  14. Dependent functions are far apart
  15. Use of pun
  16. Requires horizontal scrolling
  17. Commented Out Code
  18. Confusing Naming
  19. Long Method
  20. variable declared far from its usage
  21. Message Chains – a.b().c().d() trainwreck
  22. vertical openness between concepts
  23. large functions with nested structures
  24. Unpronounceable naming