Ever lost a terminal which had an active job running?  Ever wanted to check in on what you'd been doing from home *and* wanted or needed the session history as well?
'screen' is your friend.  If you're starting work that's important or that you may want to check from another machine it's a real time-saver.  Have a look at the 
man page for more details than you can shake a stick at.
I've only been using it for a little while, so the only caveat I've found so far is that I have to remember to give the sessions a reasonable name before I start them.  Otherwise, if you've got a lot of sessions, it's a time waster trying to find the right one.  The '-t' flag sets the title for the default shell; more importantly the '-S' flag sets the session title.  I've been using the same string for both (will probably set up an alias to deal with the duplication soon).
e.g. 
shell1> screen -t data_loading -S data_loading
shell2> screen -ls
There are screens on:
        21802.data_loading    (Attached)
        20237.pts-10.hamilton   (Attached)
        1376.variance_analysis  (Attached)
        6639.pts-8.hamilton     (Attached)
        9881.cluster_jobs        (Attached)
5 Sockets in /var/run/screen/S-paul.
You can see from the above listing that there are 5 sessions (all currently attached).  There are two listings there with no session title and I have no idea what I'm doing in them... but for the other three it's obvious (at least to me).