Tuesday, December 7, 2010

Advice for physics graduate students

keyboard skills (VERY IMPORTANT)
  • learn how to touch type (it takes about 3 months or less with 3 hours per week of practice):see http://www.typingweb.com/ which has free & awesome touch typing courses
  • learn keyboard shortcut keys
  • remember you are not an average joe person in terms of computer using intensity and learning skills, so hunt-and-peck typing, or not using keyboard shortcuts is not good (ESPECIALLY IF YOU ARE A STUDENT IN COMPUTER SCIENCE AREA OR IF YOU DO PROGRAMMING FOR LIVING).

record and quantify how much you work
  • daily, weekly, yearly
  • on each course, assignment, chapter,...
  • on each research project, and sub projects
  • for paperwork, for research proposal,
  • using of a time-tracking software is advised (free ones should be enough for personal time-tracking)For example see gnotime
working a lot is working less
  • one cannot work a lot on a constant basis. It is ok if you do it before submitting your research proposal etc.
  • However, in general working for long hours constantly will decrease your motivation and efficiency thus it is not good for you in the long term. The point is not to work a lot but working efficiently.
  • Aim to work 40 hours at least and don't go beyond 50 hours weekly.
  • Make sure your efficiency (total time assigned to work/total time recorded) is in between 75% to 90%.
Read on personal efficiency: check out



HAVE A REGULAR SLEEP ORDER as you use your brain a lot as a graduate student.

exercise REGULARLY: invest in your body as much as you invest in your head!
  • 24h-8h(sleep) = 16h usable time daily
  • 7 x 16 = 112h weekly usable time
  • 112-40 = 72h available for anything else than work
  • 3h x 2 = 6hours of exercising weekly:
  • 6h/72h = %8 of non-work time => NO EXCUSE for exercising !!!

meet regularly with you supervisor
  • be prepared and organized for this meeting:
  • have a list of questions
  • have a list of the things to discuss with your supervisor
  • have the supporting documents/files with you in an organized fashion

know beforehand how-much time you can take off yearly
  • discuss this with your supervisor

know your finances
  • know how much money you will have EXACTLY as of September 1st every year
  • know when and how-much you will get money, and you are supposed to pay tuition etc

save money
  • cook your own food (not always of course)
  • plan weekly your lunch (at least)
  • buy cold-pack and lunch bag, and bring food to office
  • every week check out grocery fliers online to see if your favorite foods are on sale. If so, buy tons of them. This can enable you save up to 50% on grocery bills.

socialize for a reasonable amount of time every week

Learn LaTeX

learn how to use citeulike for bibliography purposes

put ALL of your research/grad studies activity in a single LaTex file
  • include every individual activity as a separate file*
  • turn on and off files, by commenting/uncommenting \includefile command, depending on your daily needs

learn THE VERY BASICs of:
  1. a low level language: Fortran/C/C++
  2. bash scripting: grep, sed, awk
  3. Linux operating system
  4. symbolic/numeric math software:
  • Wxmaxima
  • Mathematica
  • Maple
  • Octave
  • Matlab
5. plotting software:
  • xmgrace
  • gnuplot
computer skills
  • learn how to automate things by writing scripts. for example don't do the followings by hand: compile a code with specific linked libs and options; run the code for input 1, .... input 20; for each output plot a data to GUI, generate .eps files, and move them to a certain folder; put these .eps files in a latex document; compare each output with another output, ...etc.
  • don't be afraid of computers/computer problem as you are a graduate student who is expected to able to solve problems and who is expected to have good learning skills. So, learn from every problem that you experience, if someone solves a problem for you, write up a howto document right away as you will not remember the solution even next day and as you don't want to bug that person again.
  • Use Google and online forums (a lot) to seek for guides/howtos/solutions for computer tricks/problems.

How to submit I-94 form to border officers at Toronto Pearson Airport

I live in Canada, and once in a while I cross the border. When I do that, I get a form/piece of paper called I-94 which is a record of entry. One can either surrender this thing right away on the way back or can use it until the expiry date. I in general do the latter one, and recently I have realized that one can surrender I-94 to border officials at Toronto Pearson airport as opposed to surrendering it at a land border which might be less convenient from transportation and cost point of view.

Basically, one can surrender the I-94 form to a canadian border officer. So, do the following:

1. Go to Terminal 3, pearson airport
2. Go to "Canada border agency"/customs information office located at level 1. See the image below where the location of this office is indicated with an arrow:


For a full Terminal 3 map, check out: http://www.gtaa.com/en/travellers/airport_information/terminal_info/

Note this should work for any airport which has international flights.

I hope this post will be useful for many people.

Thursday, December 2, 2010

Ubuntu 10.10 on Sony Vaio Netbook (VPCM111AX)

I just recently purchased a Sony Vaio netbook (VPCM111AX). Initially, I was hesitant to buy a netbook since I wasn't sure if its computational power would be sufficient for me. It turns out it is not really true that you cannot do more than a few things at a time. I so far haven't experienced any slowness due to opening many applications. To be clear, I am not an average Joe laptop user, thus the apps that I use go way beyond internet browsers.

I think if one doesn't do hard-core gaming or hard-core numerical simulations, netbook is a perfect match for your daily computing needs. Also I find the screen size is really perfect for me. After using this netbook, I consider any laptop bigger than 12" screen as an unmobile piece of product.

Netbook thing is really practical, I don't really think twice if my backpack will be heavy etc. It is substantially lighter than my previous 15" laptop which gave me serious shoulder problems when I go to conferences etc.

Speaking of Ubuntu, I have the 10.10 Maverick Meerkat version installed on my netbook. Everything works out of the box: keyboard, function keys, power management, wireless, mic (int & ext), bluetooth, graphics (vga and associated function key works out of the box), and suspend mode. Though I haven't tested the memory card reader yet. Additionally, battery lasts 4.5 hours with wireless is on half the time.

One reason why I post this is that this netbook is not listed in the ubuntu compatible netbook list. So I took some chances however I knew before the purchasing the netbook that linux works nicely on Sony laptops. I hope some others who want to purchase this netbook and use withubuntu will find this post useful

Saturday, November 13, 2010

Save more than 10% battery life with adblock

As I mentioned before, I bought a netbook recently. Naturally I was experimenting with ways of getting the most out of the built-in battery. I just realized that blocking flash based moving ads on websites can enable you to save more than 10% battery life.

Here is the main result.
the power consumption of the netbook is:
  1. 11.2 Watts before blocking, and
  2. 9.5 Watts after.
So, if you are on the go and doing web browsing, and would like save some battery power, block ads.

Notes:
1. link to adblock: http://addons.mozilla.org/en-US/firefox/addon/1865/
2. in order to see power stats, use the linux command "gnome-power-statistics".

Friday, November 12, 2010

how to switch/reassign keyboard keys in linux / ubuntu / fedora

I recently bought a netbook which came with a good size keyboard. However, due to the space constraint, the netbook producer, turns out, combined the Page-up and Home, and Page-Down and End keys. Well, as a touch typist and a programmer, I often use Home and End keys, and it is certainly a pain to be able to access them only via a Function key like Fn+Page-up=Home. So I did some googling, and here is the result.

1. Install Xmodmap
in ubuntu do: sudo apt-get install xmodmap
in fedora do: sudo yum install xmodmap

2. get the "keysym" name of the keys using xev
keysym of "home" key is "Home"
xev
press the Home key
KeyRelease event, serial 33, synthetic NO, window 0x1800001,
root 0xaa, subw 0x0, time 3028114, (288,433), root:(289,515),
state 0x0, keycode 110 (keysym 0xff50, Home), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False


via xev: keysym of "Page up" key is "Prior"
xev
press the Page up key
KeyRelease event, serial 33, synthetic NO, window 0x1800001,
root 0xaa, subw 0x0, time 2825051, (322,253), root:(323,335),
state 0x0, keycode 112 (keysym 0xff55, Prior), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False


4. switch keys by doing two assignments
xmodmap -e "keysym Home = Prior" -e "keysym Prior = Home"