2014-03-19
I've never heard of anyone else who has this problem. When I'm working, specifically when I'm doing mathematics, I won't notice I'm hungry until I stop.
When I was a child my mother used to joke about how I'd get hungry every two hours. During my undergrad I regularly engaged in hours-long coding sessions, but I always noticed when I was hungry. But now as a graduate student, I can eat lunch at 1pm, start thinking about math at 5, and not realize I'm hungry until midnight when I decide it's time for bed.
I have no idea if it's healthy or if it's really because of mathematics, but it's the weirdest thing.
I think it's because, when you start to do mathematics at a graduate level, you're trained to think about the big picture, and you can always think about the big picture. In the shower, on the train, while grocery shopping and cooking, as you're falling asleep, and when you get lost during a talk. This is what I especially love about mathematics. Once you get a few problems to chew on, you'll never need a computer or a book again, and you can even do a lot without pen and paper. I rarely think about what I might do on an airline flight for entertainment, and I'm often spotted staring off into space looking dreadfully concerned (this is when I can't tell if my idea is idiotic, which happens daily).
To mine and my fiancé's occasional chagrin, I regularly miss my train stop or forget to pick up something from the store. I don't think about how cold my office is until it's freezing cold. And I'm vibrantly awake until I hit a "wall," as my fiancé likes to call it, at which point I am overwhelmingly sleepy. Uncoincidentally, I've been reading about quantum computing every night before bed. So yeah, I forget I'm tired.
I think it differs from programming because thinking about programming is very local. The large-scale components often fit together in a relatively simple way (it's good design!). But mathematical arguments are much wilder and more variable. The other day I was trying to use a technique called diagonalization to prove something. When I remembered how diagonalization was used in other arguments, I realized that it could be used to prove something related to my object of study, but completely different from what I wanted to prove. In programming that just doesn't happen to me, and I think it's because things are so much more structured and incremental. Even if you realize you've had huge misconceptions, they're often best fixed by an additional layer of indirection or just minor changes to your code. In mathematics you have to get a lot of ideas and let them simmer until something clicks. For whatever reason, all that mulling about makes me forget about everything else.
There are a couple of activities I've found engage me so fully that I don't have long empty pauses to tempt me. Painting is the best example, and I think it's because it has some surprisingly analytic aspects and I'm absolutely terrible at it. Board games are also a good one, as are listening to and telling/writing stories via novels, certain television shows, video games with good stories, or an old-fashioned evening of story telling with friends.
So I try to do these side hobbies often enough to keep me sane. And they're fun, too, but I mostly do them to keep myself from being too single-minded.