I was just laid off and it was the standard process that is used in the US: call the person to talk to personnel, and remove access to the network while that is going on, then have someone help pack, always have someone with the person until they are escorted from the property.
That is supposed to keep an unhappy developer from deleting or damaging software or data: to mimimize data loss.
However, it still results in a lot of data loss, as all of the work the programmer was working on is dropped: software not checked in is possibly lost, documents not finished are lost, releases in process are slowed down or stopped, and a huge amount of knowledge could be lost.
It seems the potential data loss is more than offset by the actual data loss. How can all losses, both potential and actual, be mimimized?