Can I Touch Your Code? The Effects of Programming Style on Open Source Software Development
Zhiyi Wang et al.
What the paper says
Open source software (OSS) is an important component in the development of modern technologies, such as cloud computing and artificial intelligence algorithms. The OSS development process is characterized by diverse voluntary contributors and open membership to build software in a decentralized manner. As a result, variation in programming styles emerges in the software codebase. In this study, we introduce the concept of programming style inconsistency and argue for its importance in OSS development. As a characteristic of the codebase, programming style inconsistency arises naturally from diverse contributions and fluid membership in OSS, but it presents a challenge to effective artifact-centric coordination. We propose that programming style inconsistency, which is reflected in the differences in programming styles within software components (i.e., the component level) and across the entire codebase of the software system (i.e., the system level), is negatively associated with the technical success of OSS. Furthermore, such negative associations are moderated by two artifact-centric coordination mechanisms; namely, mitigated at the system level by modularity (coordination through codebase) and strengthened at the component and system levels by open superposition (coordination through production patterns). We test our research model with digital trace data from 1,817 JavaScript OSS projects on GitHub and measures of programming style inconsistency in the source code. Our results support the proposed hypotheses. Our study contributes to OSS coordination research by demonstrating the importance of programming style inconsistency in shaping coordination and OSS development success.
Evidence weight
Balanced mode · F 0.40 / M 0.15 / V 0.05 / R 0.40
| F · citation impact | 0.50 × 0.4 = 0.20 |
| M · momentum | 0.50 × 0.15 = 0.07 |
| V · venue signal | 0.50 × 0.05 = 0.03 |
| R · text relevance † | 0.50 × 0.4 = 0.20 |
† Text relevance is estimated at 0.50 on the detail page — for your query’s actual relevance score, open this paper from a search result.