The Emerging Web of Social Machines
We define a notion of social machine and envisage an algebra that can describe networks of such. To start with, social machines are defined as tuples of input, output, processes, constraints, state, requests and responses, apart from defining the machines themselves, we define their connectors and conditionals that can be used to describe the interactions between any number of machines in a multitude of ways, as a means to represent real machines interacting in the real web, such as Twitter, Twitter running on top of Amazon AWS, mashups built using Twitter and, obviously, other social machines. This work is not a theoretical paper as yet, but, in more than one sense, we think we have found a way to describe web based information systems and are starting to work on what could be a practical way of dealing with the complexity of this emerging web of social machines that is all around us.