If your code is difficult to evolve or reuse in a new project, presents numerous dysfunctions, is unnecessarily repetitive or opaque, it’s likely not as clean as it should be.