Lets say you are somewhere where coding and getting online isn't possible (On a busy flight, for example)what do you do to stay productive?

Things I would do are read whatever tech book I am currently slogging through and maybe doodle some UI stuff or workflows. What else could I be doing?

closed as off topic by user8, Walter, yannis May 21 '12 at 11:54

Questions on Software Engineering Stack Exchange are expected to relate to software engineering within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 4
    drinking more beer – Muad'Dib Nov 5 '10 at 14:42
  • Looking at all the replies here, I kinda feel I m too lazy and I used to always pride on my productive abilities. These people seem like techno-ninjas, forever on the learning and growing curve. – Mamta D Nov 10 '10 at 8:14

11 Answers 11


I keep technical videos on my laptop for these times. On a short flight, my preference is just to sleep. I am more likely to watch the videos during all the interminable waiting that surrounds a flight, when you can't safely fall asleep, or on a long flight if I wake up and get bored, or if I am staying awake waiting for a meal. Today I'll be giving http://blogs.msdn.com/b/mark/archive/2010/11/03/pdc10-downloader.aspx some exercise stocking up on just-released PDC videos before my transatlantic flight tomorrow.

For years I spent time every week at events for my kids where there was no wifi but I didn't have any real duties - I bring the child, I can watch if I want, but there's nothing I need to do. I developed the habit of saving certain of my todo's for that time. Revewing a document someone else wrote, or typing in a stack of paper notes I took during a meeting, or making a good copy in Visio of a diagram from a whiteboard that I photographed, that sort of thing. These are also highly interruptable should my child suddenly do something interesting that I want to pay attention to. If you have this kind of downtime regularly, pay attention as you go through your regular workload and ask yourself "could I save this for Tuesday night?".


Why not use that slack to relax and free your mind?

If you are 100% of your time busy, thinking, working, inventing, etc, THAT will makes you less productive.

EDIT: Even in World Of Warcraft you have to rest ;) (no I don't play wow, but I feel it's a good example)

  • Agreed, but what if I wanted to use that time for work instead of relaxation. – Toby Nov 5 '10 at 13:55
  • 1
    Haha Toby good point ;) I suggest you to take that opportunity to read (technical & non technical) or discuss with coleagues – user2567 Nov 5 '10 at 13:58
  • 1
    +1 Absolutely wish I could double vote. I make sure that if I am away from the internet that I am doing something NOT tech related. – Kavet Kerek Nov 5 '10 at 14:49

There's a Chinese proverb:

Resting is for the purpose of traveling a further distance...

  • 3
    +1 for that wonderful saying that I will keep and use in the future. – user2567 Nov 5 '10 at 14:09
  • @Pierre 303, that saying served me well too :) – o.k.w Nov 6 '10 at 13:53

If you must do something - eg on a flight - it does not have to directly work / project related.

I'd suggest some of these:

  • read a novel - a bit of escapist down time never hurt anybody

  • read the FINANCIAL section of the newspaper - every programmer and other professional should learn more about business, money, investing and how the world goes round. It won't be an easy start but as yoda might put it: "Learn it you must".

  • read a bit about project management, or 6 sigma, or any of the other fads and jargon-laden things that are washing around. Do so with an open and critical mind, not taking anybodies word as gospel truth.

This is ultimately all a broadening of you and your education which you will never get any other way. Over a long term (10 years or do) you know more than your peers - you become more rounded, more knowledgeably, more employable, and more respected.


My suggestion, which no one has mentioned yet, is to spend time with other people.

It seems so much of a programmer's life is spent interacting with (virtual) objects that any additional interaction with people (in a positive and constructive way) would benefit them as a person! (And others, as well. I didn't mean to make it sound so self-centered. Rather the opposite, one needs to care for others, too!)

  • On a busy flight? – user1249 May 20 '12 at 12:54

I'd sleep so that I'm more rested and productive when I get to a more productivity enhancing environment.


I'd break up the available time:

  • 1/4 Rest
  • 1/4 do something fun
  • 1/4 do something creative
  • 1/4 read something technical.

If I'm not relaxing then I personally:

  • Write some more of my technical book ("Hi Editor!")
  • Read tech books/articles etc that I save up for such journeys
  • Read stuff that's completely outside of my field (broaden that mind)
  • Update my personal Kanban board
  • Write up a bunch of lightning talks, presentations & blog posts that I want to give in the future
  • Talk to my wife about user experience design

I like to listen to podcasts and/or audiobooks. There are a ton of great podcasts out there (technical and non-technical), and if you're not into buying all your books, the local library likely has digital downloads or audiobooks on CD you can rip to your mp3 player.


offline != down.

I keep a full deployment on my own machine, so that I do not need to be online to develop. This allowed me to do a fair amount of development work while commuting via train before the trains in this area started supporting wifi.

  • Agreed, I do most development offline then push it up, which is why I also said about coding not being an option. – Toby Nov 11 '10 at 15:51

You could take out your notepad and review your apps design and architecture. Sometimes looking at it after a while helps you see additional venues.

If you're developing in one of the "framework intensive" langs, like C# or Java, you could explore some pieces of the framework, or just read about langugage syntactic sugar that you didn't have time to check out before.

Having gained additional mastery of your development platform will make you more productive once you're back in work environment.

Not the answer you're looking for? Browse other questions tagged or ask your own question.