Making computer and normative codes converge. A sociotechnical approach to smart cities