If you have a separate desktop machine at work, you might want to use that as a terminal server to your laptop. This means you get the larger screen and the better keyboard, without having to worry about syncing files. Ssh will provide a secure connection and, crucially, a secure X connection between the two machines. For other programs, you usually have to decide at startup time on which screen you want them. To run them on the laptop screen, start them as usual.
Some programs also accept a -display option.
Read the documentation on xauth on how to set this up. There are some ways in which you can dynamically move windows from one machine to another. A window on your desktop that contains other windows. It looks a lot like running an emulator. With these programs, you can start your processes on stan, then move all their windows to olli, then work for a while, and then move them back so you can continue working on stan.