It's (likely?) not possible to generate unique IDs without a central authority. One more reason to be fault-tolerant. And an interesting illustration of how programming Erlang turns some age old assumptions on its head. Shared state is possible, but it requires a process to handle its sequentiality, so stands out like a sore thumb.