| > The best kind of documentation is that which is checked by the compiler and guaranteed to be correct - the code itself. Which lends your documentation to being hard to read for a certain percentage of developers, varying depending on your project. This strategy, while easy for developers experienced in the target language and familiar with the code, can have real negative consequences if the people involved in the project are of a different fluency level with the language or even CS in general, or new to the project. Q: What I just coded is obviously quicksort, so why should I label it? A1: Because not everyone is used to seeing quicksort implemented manually in C, assembly, python, etc. A2: Because without knowing at a high level what you are trying to accomplish, it's much harder to ascertain whether that bug you just found is really a bug or an interesting feature which will come into play a page later. A3: Because knowing immediately that this chunk of code does NOT pertain to some specialized code to select items after sorting saves time and cognitive load. |