Generally, when we want to run code on different computers, we have to write special programs to handle loading code and sending data between nodes. This process is itself very error-prone and hard to get correct.
However, in Elixir and OTP, the hard work of getting code loaded on multiple machines and cooperating is done for us; the OTP framework will load code, connect nodes, and handle the task of distributing applications.
OTP will not do all the work, but it gives a good amount of tools to help guide us in the right direction and help us make the right choices.
"Distributed computing is hard"
This quote, of course, ...