Often I'll learn some maths, experiment with some new approaches to solving problems, or watch screen casts to learn how other people approach the craft.
I don't do it because I'm some corporate shill. I just really love programming.
I also have a wife, a child on the way, and my life seems pretty balanced to me.
I just look at overtime and think: well I only have so many minutes left to live, what's in it for me if I do this? Sometimes the answer is just money because that's probably what I needed at that moment... more often than not in recent years I don't bother unless there's equity on the line (which has never been on the table anyway). If my employers ever had a problem with it I just moved on. Things got tight but they never hit rock bottom.
It's all just about priorities and sticking up for yourself.