Social machines: a philosophical engineering