Documente o POR QUE, não apenas o QUE

Concordo.

Comentários óbvios demais geralmente não acrescentam muita coisa e só poluem o código:

int idade = 42; // idade
if (aniversario()) {
    // se fez aniversário, aumenta 1 ano na idade
    idade++;
}

Então concordo que, em geral, o por que é mais importante do que o que. Em vez de dizer "fazendo X", é melhor dizer "fazendo X por causa da regra Y (link da especificação)".

Mas tudo tem exceção, tem vezes em que o que não é tão óbvio e merece um comentário (mas aí pode ser um sintoma de que aquele trecho está confuso demais e precisa ser refatorado - ou não, cada caso é um caso).