Another parallel I've experienced with going to the gym and coding is that its far more fun doing it with somebody else. You work out harder, and push yourself in a better way than doing it by yourself - something I've found also while I code.
I don't go to the gym with someone, but there is a big group of people there when I go, and we all know each other. I particularly like that we all have different jobs and come from different backgrounds. Like you mentioned, we all push each other, but more important to me is I get some time talking with non-engineers everyday.