We always face interesting discussion on code matrices. I got a funny but very interesting understanding of the types of metrices and its prioritization that we always talk about. I would spread code metrics into two categories, Code matrices that can be identified with bare eyes by a developer. Code matrices that cannot be identified with bare eyes by a developer. Code matrices that can be identified with bare eyes are Unused types Depth of inheritance Code comments etc. The above matrices can be identified by a developer while coding or refactoring and he can react on them immediately. For example, if he / she see an unused import he / she can delete it. He / she does not have to wait for a tool to detect it or to Google for a new tool to recognize this measure. Same applies for code comments, do not write comments if you find any irrelevant comment delete them right a...