Comments are often used as a crutch for sloppy code. Comments can also and often lie, they are ignored by the compiler and thus can say anything no matter how incorrect. Code can not lie. It does what it says.
Clean code shouldn't need comments. The only time you should use comments is if your code is doing something extremely strange and you couldn't figure out any clean way of doing it.
I've always found people who don't like to comment their code also don't like to test their code and rarely like to use anyone else's code. It's obvious isn't it?
I guess I don't own an iPhone...