There's a long thread on whether to comment code in comp.lang.smalltalk - reading it, I think there's a bridge not being crossed by any of the proponents. The case for comments was made by Vassili on his blog here; read the cls thread, and you'll see plenty of the other side - this being a good example.
On the one hand, Vassili points out that comments are another form of communication between the current developer and future developers - and more communication is usually better than less. The caveat I have is the matter of bit rot. Over time, code gets changed for a variety of reasons. Maintenance, refactoring, what have you. The comments almost never keep up. What started out as a well intentioned comment with high communicative value often ends up as a misleading marker to the past. I have no idea how to fix that problem, either. The decisions to update code are made over a long period of time, and whether a given developer "has time" to muck with the comment is typically an ad-hoc decision.
Perhaps a development standard, taken on by the whole group would help. I don't know - if it were easy, that long winded cls discussion wouldn't be happening.