I disagree with this. The code alone is not the artifact. How you came to the decision to write the code in a certain way is certainly an important artifact of the development process. Otherwise how would your coworkers know whether or not a particular piece of logic is still relevant?
Ok, but folks aren't even writing their own code, you think they'll go back and comment generated code? They often don't even look at the implementation that closely.
Also, while commenting is good, commit messages can stick around longer.
> How you came to the decision to write the code in a certain way is certainly an important artifact of the development process. Otherwise how would your coworkers know whether or not a particular piece of logic is still relevant
Not really. Why is always more important than how. Even what is more important. Relevancy of a particular block of code is in the specs and some technical aspecs of computing/library/platform, not in the thought process of the developer.