The highest principle of network architecture design is interoperability. If Metcalfe's Law tells us that a network's value can scale as some exponent of the number of connections then our job in building networks is to ensure that those connections are as numerous, as operational, and as easy to create as possible. Where we make it easy for anyone to wire in new connections we maximise the ability of others to contribute to the value of our shared networks.
Amongst those using Python for research are a wide range different disciplines and targets but one area that stands out for me, and stretches across a range of traditional domains is the study of networks. Networks of physical interactions and social networks, of genetic control or of ecological interactions amongst many others. The scientific Python community is also amongst the most networked of research communities and amongst the most open in the sharing of research papers, of research data, tools, and even research in process in online conversations and writing.
Lifting our gaze from the networks we work on to the networks we occupy is a challenge. Our human networks are messy and contingent and our machine networks clogged with things we can't use, even if we could access them. What principles can we apply so as to build our research into networks that make the most of the network infrastructure we have around us. Where are the pitfalls? And what are the opportunities? What will it take to configure our work so as to enable "network ready research"?