Unpronounceable/Confusing namingErrorcodesinstead ofexceptionViolatesCommand-QuerySeparationFree!LongMethodMultipleReturnPointsNon-searchablevariablenameRepetitiveNamingCatchingexceptionsand loggingonlyMessageChains –a.b().c().d()trainwreckDependentfunctionsare farapartSwitchStatementAbuseToo manyarguments(>3)CommentedOut CodeCommentsExplainingCodeverticalopennessbetweenconceptsvariabledeclaredfar fromits usageToo ManyResponsibilitiesRequireshorizontalscrollinglargefunctionswith nestedstructuresCodeDuplicationUnpronounceable/Confusing namingErrorcodesinstead ofexceptionViolatesCommand-QuerySeparationFree!LongMethodMultipleReturnPointsNon-searchablevariablenameRepetitiveNamingCatchingexceptionsand loggingonlyMessageChains –a.b().c().d()trainwreckDependentfunctionsare farapartSwitchStatementAbuseToo manyarguments(>3)CommentedOut CodeCommentsExplainingCodeverticalopennessbetweenconceptsvariabledeclaredfar fromits usageToo ManyResponsibilitiesRequireshorizontalscrollinglargefunctionswith nestedstructuresCodeDuplication

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