Free!UnpronounceablenamingLongMethodCommentedOut CodeMessageChains –a.b().c().d()trainwreckErrorcodesinstead ofexceptionNon-searchablevariablenameUseof punCodeDuplicationDeepNestingCatchingexceptionsand loggingonlyCommentsExplainingCodevariabledeclaredfar fromits usageToo ManyResponsibilitiesSwitchStatementAbuseverticalopennessbetweenconceptsViolatesCommand-QuerySeparationConfusingNamingMultipleReturnPointsToo manyarguments(>3)largefunctionswith nestedstructuresDependentfunctionsare farapartRequireshorizontalscrollingFree!UnpronounceablenamingLongMethodCommentedOut CodeMessageChains –a.b().c().d()trainwreckErrorcodesinstead ofexceptionNon-searchablevariablenameUseof punCodeDuplicationDeepNestingCatchingexceptionsand loggingonlyCommentsExplainingCodevariabledeclaredfar fromits usageToo ManyResponsibilitiesSwitchStatementAbuseverticalopennessbetweenconceptsViolatesCommand-QuerySeparationConfusingNamingMultipleReturnPointsToo manyarguments(>3)largefunctionswith nestedstructuresDependentfunctionsare farapartRequireshorizontalscrolling

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