Too many comments are a bad thing, its just annoying to see the variables declared with suitable names, then a comment next to it telling you why it is so-named. I am probably guilty of not writing enough comments, I've looked back at code before now and its taken a while to work out why I did particular things. Comments are very necessary!!

I would suggest not commenting the painfully obvious, and making sure you do comment things like class definitions and complex algorithms - how and why they work. Otherwise you'll be confused when you look bakc at it later, unless of course you have full documentation to go with it which you wrote at the time - unlikely though

Just my thoughts anyhow....