This sounds more like one of those assignments where they force ye' to interview people in the field... hah, I did all of those via e-mail.
1. It really depends where you're working. Outside, in Arizona, on the laptop - YUCK - it's terribly hot... Inside my house, with the A/C set at 69*, well, it feels great.
While that's not what you wanted (small guess), climate does impact my tolerance level of programming issues... like any job, even though it's a nice and lazy one where you sit in front of the screen.
But when you're given a complex problem with pre-existing code, it feels oh-so-nice to find the bug and fix it... primarily code in which you did not write.
I think the most important part of 'feeling' while programming is just keeping a clear mind, and 'thinking outside of the box' when analyzing the task...which can be quite hard to do when pressured by the boss or other deadlines...ahh, deadlines.
2. I hate writing...beyond coding comments... so I couldn't tell you the similarities... but of course you can write articles on programming, people do it all the time. New ideas are always great, and if you could come up with three per week, well, that'd be awesome.

Or just analyzing common problems in coding practice/theory... perhaps even tutorials, depends what you're in to. Point being, 'tis limitless!
3. Two big things for me: first, working on pre-existing code from some other person/organization, usually on the large-scale. These problems are usually pretty complex and push ma' limits in trying to find it, so it's great. Secondly, finishing my own projects. Once you start 'coding', you come up with so many fun things to write...and start writing 'em as you think of them. However, life doesn't allow for that - school, work, family and friends... exercise, all of that. Psh, I don't know what to say about that...!
You scare me already: first the liking of writing, and now hoping to find a mentor here...ah!