Here's my, yet another, alternative to the many nice shell hacks out there: a bash/zsh "up" command that does "cd ..", or "up <n>" does "cd .." n times.
function up () { if test $# = 1 ; then s=$( printf "%$1s" ); s=${s// /..\/}; cd $s ; else cd .. ; fi; }