Hacker News new | past | comments | ask | show | jobs | submit login

> Documentation and Code Quality are some of the most important features.

Code quality is an important attribute, sure, but those don't say anything about it.

Comprehensive documentation of the bureaucratic sort of process documentation that I think motivated that line is not a deliverable, its an artifact of process; when it becomes understood as an end to its own rather than as something that should be used to the extent it is useful to achieve value in the end product, it becomes extremely problematic (I've experienced the kind of bureaucratic software development that this reacts to, and I can assure you that it does not contribute positively to quality, it contributes to management -- and staff -- spending lots of time worrying about and measuring and optimizing metrics that are unrelated to quality.)

> Your software is not working if it doesn’t exactly match its documentation.

Your software is not working if it doesn't deliver the expected behavior. Documentation of requirements is important to provide a consistent method of communicating between people (and across time and space) what those expectations are. And to the extent that it is necessary for that purpose documentation is a good thing.

But its important to keep the purpose in mind. Otherwise, you end up with excessive effort going into polishing documentation rather than building software.

> you’d end in jail if you tried to write security critical systems like that.

Sure, bureaucratically comprehensive documentation is extremely useful (and sometimes essential) for demonstrating compliance with process mandates. Such mandates, and the incentives they create, are also very often not helpful to the actual quality of software, including the aspects of software quality which motivate the mandates.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: