Show simple item record

dc.contributor.authorBlanthorn, Oliver A
dc.contributor.authorCaine, Colin M
dc.contributor.authorNavarro-López, Eva M
dc.date.accessioned2021-02-17T12:30:16Z
dc.date.available2021-02-17T12:30:16Z
dc.date.issued2019-12-23
dc.identifier.citationBlanthorn, O.A., Caine, C.M. & Navarro-López, E.M. (2019) Evolution of communities of software: using tensor decompositions to compare software ecosystems. Applied Network Science, 4, 120. https://doi.org/10.1007/s41109-019-0193-5en
dc.identifier.issn2364-8228en
dc.identifier.doi10.1007/s41109-019-0193-5en
dc.identifier.urihttp://hdl.handle.net/2436/623939
dc.description© 2019 The Authors. Published by Springer. This is an open access article available under a Creative Commons licence. The published version can be accessed at the following link on the publisher’s website: https://doi.org/10.1007/s41109-019-0193-5en
dc.description.abstractModern software development is often a collaborative effort involving many authors through the re-use and sharing of code through software libraries. Modern software “ecosystems” are complex socio-technical systems which can be represented as a multilayer dynamic network. Many of these libraries and software packages are open-source and developed in the open on sites such as , so there is a large amount of data available about these networks. Studying these networks could be of interest to anyone choosing or designing a programming language. In this work, we use tensor factorisation to explore the dynamics of communities of software, and then compare these dynamics between languages on a dataset of approximately 1 million software projects. We hope to be able to inform the debate on software dependencies that has been recently re-ignited by the malicious takeover of the npm package and other incidents through giving a clearer picture of the structure of software dependency networks, and by exploring how the choices of language designers—for example, in the size of standard libraries, or the standards to which packages are held before admission to a language ecosystem is granted—may have shaped their language ecosystems. We establish that adjusted mutual information is a valid metric by which to assess the number of communities in a tensor decomposition and find that there are striking differences between the communities found across different software ecosystems and that communities do experience large and interpretable changes in activity over time. The differences between the elm and R software ecosystems, which see some communities decline over time, and the more conventional software ecosystems of Python, Java and JavaScript, which do not see many declining communities, are particularly marked.en
dc.description.sponsorshipOAB’s work was supported as part of an Engineering and Physical Sciences Research Council (EPSRC) grant, project reference EP/I028099/1.en
dc.formatapplication/pdfen
dc.languageen
dc.language.isoenen
dc.publisherSpringer Science and Business Media LLCen
dc.relation.urlhttps://appliednetsci.springeropen.com/articles/10.1007/s41109-019-0193-5en
dc.subjecttensor factorisationen
dc.subjectmultilayer temporal networksen
dc.subjectsoftware dependency networksen
dc.titleEvolution of communities of software: using tensor decompositions to compare software ecosystemsen
dc.typeJournal articleen
dc.identifier.eissn2364-8228
dc.identifier.journalApplied Network Scienceen
dc.date.updated2021-02-15T16:27:00Z
dc.date.accepted2019-08-23
rioxxterms.funderEngineering and Physical Sciences Research Councilen
rioxxterms.identifier.projectEP/I028099/1en
rioxxterms.versionVoRen
rioxxterms.licenseref.urihttps://creativecommons.org/licenses/by/4.0/en
rioxxterms.licenseref.startdate2021-02-17en
dc.source.volume4
dc.source.issue1
dc.description.versionPublished version
refterms.dateFCD2021-02-17T12:30:03Z
refterms.versionFCDVoR
refterms.dateFOA2021-02-17T12:30:17Z


Files in this item

Thumbnail
Name:
s41109-019-0193-5.pdf
Size:
2.288Mb
Format:
PDF

This item appears in the following Collection(s)

Show simple item record

https://creativecommons.org/licenses/by/4.0/
Except where otherwise noted, this item's license is described as https://creativecommons.org/licenses/by/4.0/