"If there is one thing that developers do not do well it is multi-task. Multi-tasking is for operating systems. Sure, we can multi-task, but I promise you that our productivity will be destroyed by it. Developers are most of all problems solvers. Problem solving is an extremely time consuming task that requires focus and concentration. Multi-tasking is the arch nemesis of focus and concentration."
(Emphasis added my me)
Wow, when I find myself doing some heavy development I end up focussing in on the job at hand to such an extent that I literally don't know what day it is, if I've had lunch today, or where I am. Also, who are you and how did you get into my house?
To such an extent in fact that my spouse was concerned that I had an early case of Alzheimer's, but now has wrongly concluded that I just don't care about her, or anything else for that matter, which couldn't be further from the truth.
The problem is compounded by the fact that when a guy's brain is in "problem solving" mode, it's too easy to default to "Mr Fix-it" behaviour in our relationships too, which does not help at all. The trap that's easy to fall into is thinking that working one's self into a zombie for their family might be interpreted as as a sign of dedication or devotion, when in fact it's seen as being disconnected and disinterested.
I may have been too slow to realise my mistake, but if you're buried in the middle of a world-changing software project please, for the sake of your self and your family, un-plug for a while, take the wife and kids out to see a movie, and take that fucking ridiculous hat off...