• Fanaticism around writing “clean” code bothers me

    • balance is needed
    • careless code stales development through overwhelming technical debt
    • immaculate code stales development through compoundingly delayed release
  • A spectrum of required cleanliness exists for code

  • Highest-to-lowest required code cleanliness tends to apply as follows:

    • high performance algorithms
    • compilers and hardware drivers
    • core user space applications
    • changing business logic
    • changing presentation code
    • unsaved code in your text editor
  • I’d like to define a metric for this continuum

    • (one likely already exists, but unfortunately hasn’t bubbled up in popularity)
  • UUM := Uses Until Modification

    • while this metric is independent of business value, it’s still a clear factor of business value
    • the UUM of jointly modified code should be equal to the greatest UUM value of any particular code being modified
    • code with greatly differing UUM values should be separated (by the way, this is what I understand to be the high level rationale behind design patterns like MVC)
    • the lower the UUM, the less you should worry about code cleanliness
    • no matter the UUM, code should be reasoned as functioning properly
    • if use of the code grows (and optimally it does), later releases entail higher UUM