Monday, August 11, 2014

Surviving an International Business Travel

Here's a guide to survive an International Business Travel. It's completely derived from my experiences of very short term (1-2 weeks) international travels. Although I am no expert on travel advice, I think some of the stuff here can be useful to all.

Before you board / On flight

  • Make sure you start your travel process well in advance. Offices typically have long processes for international travel approval and you don't want to get into last minute tensions. I suggest you have a time frame of at least 1 month before your date of travel.
  • Get your tickets, clarify the routes, verify your meal options before the day of travel. One of my colleagues did not bother to collect his pick-up number for a train ticket in his multi-modal travel and as a result, had to struggle a lot during the journey. Also, the last time I traveled on an airlines, my travel agent had forgotten to specify my meal option as vegetarian and as a result, I had to struggle in the flight with an empty stomach.
  • You'll usually be given enough money for your daily expenses abroad, but if you have plans for shopping or sight-seeing, make sure you carry some extra money with you.
  • Always check for your credit limit before leaving and pay your bills on time. Do a rough calculation of the costs you will incur abroad - this might include hotel boarding cost, local commutation costs, etc. You can find all of these rates online and make sure you have enough credit limit on your card. In my first trip, I overlooked this point and had to struggle paying my hotel bill - this involved making some late night calls to the bank's customer care and convincing them to increase my credit limit. I was lucky that they increased my credit limit in time, but this might not be the case always.
  • Carry additional native currency with you, you might need it after you return.

Food

  • If you're a vegetarian, be prepared to face some tough times outside. There's no such thing as a 'pure vegetarian' restaurant outside. It's always mixed, and get used to this fact. Also, when I say it's mixed, don't expect a lot of vegetarian dishes/items on the menu. Usually, it's just 2-3 items. So you're options are really limited.
  • If you're traveling to a country which is non-English speaking, don't assume anything based on looks or smells. Always check for the ingredients. If in doubt, ask! Don't hesitate, just ask! If possible, pick up some local words which are equivalents for basic words like 'vegetarian' or some vegetables, 'no meat', etc.
  • Take something from home to survive for the stay, if you do not want to eat outside. Your best bet here is the ready made packaged foods like the ones from MTR.
  • If you wish to cook there, make sure you get a room with kitchen. Even if you get one, take some packaged foods, to survive until you get some groceries from a local store.
  • Pick the items carefully when you are in a store. Again, some local vocabulary will be really helpful here. If you know someone who already stays there, try to get in touch with them - at least on phone and ask for help.

Luggage

  • Since you're on an international travel, you need to be careful on the luggage and the weight of the luggage you carry. Every airlines has a specific limit on the weight that is allowed on a per-class basis. Check the web-site of the airline before you fly and make sure your luggage is well within the limits. As a rule of thumb, make sure your luggage weighs at least 3 kilos less than the specified amount. 
  • If the weight exceeds the specified limit, you might have to pay extra and it can be really costly! And if the authorities ask you to take out some luggage, be prepared for that since it's a waste of time arguing with them.
  • Also, make sure you follow the above information while coming back too. Refrain from buying too much stuff if you're not planning to pay extra or declare at customs.

Passing time

  • Sure, business travel is meant for business, but people do go home. So you've to figure out what to do after the work hours.
  • If you think you can go around in the city, plan for it. It's always a good idea to ask someone locally about the nearby places and timings, etc.
  • Try to carry your passport along with you always. It's just a safety measure and it won't burden you anyway. Also, have a map of the city with you if possible. GPS/Data might cost you a hell lot of money.
  • Carry a book to read in the room or in the airport. It might be very handy. Airports and transit times can be really boring. A book can really help pass your time.

Staying in touch

  • You wouldn't to miss your family when you're abroad, would you? Find out if the hotel provides Wi-Fi based internet and if it's not free, include the cost in the estimation. You MUST need an internet connection.
  • You can take a calling card or some pre-paid card, there are lot of options available.
  • Make sure your mobile is capable of making emergency calls/SMS  - I mean keep the balance enough. 
  • Check for a suitable web browser so that you can use modern communication tools like Google Hangouts or Skype. They're really an efficient way.
So, that's all I can think of for now. Do let me know if I've missed anything.

Have a safe journey!

Wednesday, March 6, 2013

RTFM

If you're wondering what the title means, it stands for 'Read The F***ing Manual'. It's a pretty popular line in programming circles, and I've been realizing it more often. Latest episode being today when I discovered (unfortunately so late) that atoi() function in C actually accepts partially correct strings (strings containing alphabets and decimals) and produces a result without complaining. I assumed it to return some wrong value or throw some exception, but to my surprise, it didn't. I posted this in Stackoverflow here and got some good responses. And eventually I realized that it was mentioned clearly in the C manual about the behavior. Now why is it that way is something that I did not understand. But I did understand that you need to RTFM!

Now, this happened to me during some pastime activity, but imagine this happening in real production scenario. You end up doing some silly mistake in the code and end up spending a lot of time trying to figure out the problem, only to figure out later that you should have read the manual thoroughly. Most of the times and probably lot of our knowledge on a programming language/framework is obtained through observing others code or by consulting with others. We often don't have enough time to read that specification/ documentation thoroughly before we actually do something in it. And in a way this is good - all study and no practice will not gain you much. May be you'll remember it for a longer time once you actually burn your fingers. But do you really need to burn them? May be a simple look up in the reference should have saved your precious time!

So should you spend days reading the ISO C++ spec? No, just keep it handy and refer to it once in a while. 

Happy coding!

Sunday, March 3, 2013

Weekend learning: LaTeX

I've always been amazed by the type quality of the technical papers like IEEE and ACM. I always wanted to  produce my documents in such high quality. I learned that they were not written in any normal text editor or word processor like MS Word, but were specially type set using a framework called LaTex (pronounced 'lay-tek'). I looked up on the internet and read some articles on LaTeX but found the framework very powerful and intimidating. And so, I put off investing any effort in learning this framework.

Last month, I bought a text book on Compiler theory (the classic red dragon book) and found that the book had been written entirely in LaTeX. I was taken by the beauty of the typesetting in that book. And this triggered the urge in me to learn LaTeX. So I started off my efforts into learning this new tool and downloaded the tools needed from an internet site. It's free of cost and comes with everything you need to produce documents ranging from a simple article to books - compilers, language packs, style packs, text editor, PDF viewer and much more. Now on to more about using LaTeX itself.

LaTeX is a typesetting program originally written by Donald Knuth (yes, 'the Donald Knuth') from a need to produce high quality, standard way of producing technical papers including lot of math symbols. Later it was developed by many people in the open source community and is now a collection of great tools. LaTeX is a very intelligent program that frees you from all the typesetting headaches while you are writing a document. Imagine all the fiddling you need to do with the rulers, sections, etc. in MS Word while trying to write a moderately complex document such as a project report or a thesis. LaTeX allows you to focus on the content leaving all the typesetting headache to it. In a typical scenario, one writes the document and embeds a few 'commands' which direct the LaTeX system to typeset the content. It might be a little confusing at first, but there's great documentation to get started with and also there's a vibrant community to help you.

There's a lot more that you can produce using LaTeX apart from just technical papers. Over the period of time since it's inception, people have extended the capabilities of LaTeX to produce a variety of documents including - articles, letters, flyers, presentations (yes, the Powerpoint ones), mind maps, chemical composition diagrams, etc. At this point, I think I've said enough about LaTeX and I think you should start using it. I've included some references here which contain great information about LaTeX.

Have fun, happy TeXing :)

Resources:

  1. http://www.latex-project.org/ - the main source for everything LaTeX.
  2. http://www.tug.org/protext/ - software for LaTeX in Windows.
  3. http://en.wikibooks.org/wiki/LaTeX - the awesome book!
  4. http://latex-project.org/guides/ - other collection of good documentation.
P.S. I am not propagating against MS Word here, I would still love to write small, regular documents using MS Word. LaTeX can be very time consuming, so I suggest you to go for it only if there's a pressing need.