Perspectives on Distributed Systems