| Hi, OP. Thanks for the interesting post. Off the top of my head: 1. Variables declared or assigned, but never referenced again 2. Improper variable scope (local/global) 3. Reserved words (by language, framework, industry, app) used as variables 4. Improperly reused variable names 5. Improperly named variables (1 or 2 characters, contained in another variable name) 6. Too difficult to understand variable or function names 7. Function names must be Verb-Adjective-Noun 8. Variable names must be Adjective-Noun 9. Improper data type 10. Repeated (in one or more programs) code for which reusable code should be written. (Any future maintenance must only be done in one place.) 11. Fresh code rolled instead of using existing reusable code meant for that purpose. 12. Partially complete data base updates 13. Improper data base locking 14. Non-standard UI widgets 15. Version control problems (didn't start with current production version) 16. Not all changes documented with ticket# 17. Case/switch statements without fall-through clause (case 1) 18. Improperly structured if...then statements 19. if...then statements too long (according to published standard) 20. Improper indenting/spacing (according to published standard) 21. Comments don't match code 22. Comments inaccurate 23. Calling/using obsolete/deprecated code 24. Not backward compatible 25. Obviously works under only certain conditions (which will be caught in testing) 26. New code inserted in wrong place (if...then, case, function, etc.) 27. Obviously missing data base updates 28. Obviously missing API calls 29. What else? |