Interruptions and context switching are the two most costly factors that directly impact a programmer's daily productivity. Although there is no permanent way to avoid them, there are some interesting strategies to minimize their impact. The Cost of an Interruption Based on various scientific studies, it takes at least 10-15
This can easily be generalized to any job requiring any kind of constant thoughts gathering, and is so true!
oh yeah absolutely
2 things that help me very much: perject for GNU Emacs, and Contexts + usual workspaces for Xmonad.