Smart and Distributed Computing