Once, a Buddhist mystic came to see Coyote. "I have people working together all over," he said, "High up in the mountains. Down on the sunny beaches by the western ocean, and up in the cold rains of the northern coast." "Ok," said Coyote.
"I have a problem though," said the mystic, "My people have to access all of these resources that live on this server you built, all of these shared files." "No problem," said Coyote, "We can use linux."
The mystic already had a linux server, because Coyote had done some other work for him. Coyote set the server up to run OpenVPN. This allowed the computers all over the place to act as if they were on the same LAN and share network resources.
"Excellent," said the mystic, and went off to his work. But then the mystic came back. "Now I have a new problem," he said, "the remote workers can access our database application over the VPN you set up, which is wonderful, but for them some things in the database application run really slow." "Hmm," said Coyote. He investigate the database, which used Microsoft SQL Server. He came back and said "It's only some queries. The database server sometimes spits out this giant list of things to the client application. The client application then processes that on it's end and figures out what it's supposed to show the user. It's bad design."
"I see," said the mystic, "can you fix it?" "No," said Coyote, "the people who built the client application would have to do that." "Bother," said the mystic.
"What if we made some virtual machines?" said Coyote. "How would that work?" asked the mystic. "I have seen accounting software that runs in the cloud," said Coyote, "that solves a similar problem by giving each user their own Windows virtual machine to log into with Remote Desktop. That virtual machine runs in the same datacenter as the database application that's causing the slowdown, so all that giant mush of data doesn't have to go over the VPN, just to the virtual machine. Then the users can connect to the virtual machines over the VPN using RDP." (That's Microsoft for "Remote Desktop Protocol").
So they did that, and it all worked. A little bit of time passed and the mystic came back. "It seems it is my karma to have a new problem every time we fix the old problem," he said. "It's good that you're Zen about it," said Coyote.
"Now the people in the far away places can't print to the computers in their offices from the database application," said the mystic, "because the virtual machines are on the network at our home office." "Oh," said Coyote, "we already have the solution for that!"
Coyote just shared all the printers over the VPN to the virtual machines and set each machine up with it's user's local printer as a network printer. "Huh, look at that," said the mystic.