On the challenges of open-sourcing proprietary software projects

Abstract

The open source software (OSS) movement has become widely recognized as an effective way to deliver software. Even big software companies, well-known for being restrictive when it comes to publishing their source code artifacts, have recently adopted open source initiatives and released for general use the source code of some of their most notable products. We conducted an exploratory study on merits of the widespread belief that open-sourcing a proprietary software project will attract external developers, like casual contributors, and therefore improve software quality (e.g.,given enough eyeballs, all bugs are shallow”). By examining the pre- and post-migration software history of eight active, popular, non-trivial proprietary projects that became open source, we characterize the phenomenon and identify some challenges. Contrary to what many believe, we found that only a few projects experienced a growth in newcomers, contributions, and popularity; furthermore, this growth does not last long. The results from the study can be useful for helping software companies to better understand the hidden challenges of open-sourcing their software projects to attract external developers.

This is a preview of subscription content, log in to check access.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Notes

  1. 1.

    https://developers.google.com/opensource/projects

  2. 2.

    https://github.com/about/press

  3. 3.

    https://github.com/atom/atom/

  4. 4.

    https://github.com/facebook/hhvm/

  5. 5.

    https://github.com/apple/swift/

  6. 6.

    https://github.com/dotnet/roslyn/

  7. 7.

    https://github.com/apache/storm

  8. 8.

    https://github.com/zulip/zulip

  9. 9.

    https://github.com/github/hubot

  10. 10.

    https://github.com/plotly/plotly.js

  11. 11.

    https://github.com/zulip/zulip/issues/1968

  12. 12.

    https://opensource.guide/starting-a-project/#launching-your-own-opensource-project

  13. 13.

    https://github.com/facebook/hhvm/pull/322

  14. 14.

    https://enterprise.github.com/security

  15. 15.

    https://github.com/atom/atom/pull/1929

  16. 16.

    https://github.com/atom/atom/pull/2602

  17. 17.

    https://github.com/atom/atom/pull/8452

  18. 18.

    https://github.com/hubotio/hubot/pull/788

  19. 19.

    https://github.com/hubotio/hubot/pull/489

  20. 20.

    https://github.com/dotnet/roslyn/issues/14

  21. 21.

    https://github.com/dotnet/roslyn/issues/23

References

  1. Abbott T (2017) Open sourcing zulip – a dropbox hack week project. Online (2017). https://blogs.dropbox.com/tech/2015/09/open-sourcing-zulip-a-dropbox-hack-week-project/. Accessed: Nov-20-2017

  2. Anthes G (2016) Open source software no longer optional. Commun ACM 59 (8):15–17

    Article  Google Scholar 

  3. Avelino G, Passos LT, Hora A, Valente MT (2016) A novel approach for estimating truck factors. In: 24th IEEE International Conference on Program Comprehension, ICPC 2016, Austin, pp 1–10

  4. Bird C, Gourley A, Devanbu P, Gertz M, Swaminathan A (2006) Mining email social networks. In: Proceedings of the 2006 International Workshop on Mining Software Repositories, MSR ’06, pp 137–143

  5. Borges H, Hora A, Valente MT (2016) Understanding the factors that impact the popularity of GitHub repositories. In: 32nd IEEE International Conference on Software Maintenance and Evolution (ICSME)

  6. Borges H, Hora A, Valente MT (2016) Predicting the popularity of GitHub repositories. In: Proceedings of the The 12th International Conference on Predictive Models and Data Analytics in Software Engineering, PROMISE 2016, Ciudad Real, pp 9:1–9:10

  7. CSharpFAQ (2017) We’re moving to GitHub! Online (2017). https://blogs.msdn.microsoft.com/csharpfaq/2015/01/10/were-moving-to-github/. Accessed: Nov-20-2017

  8. Dabbish L, Stuart C, Tsay J, Herbsleb J (2012) Social coding in GitHub: Transparency and collaboration in an open software repository. In: Proceedings of the ACM 2012 Conference on Computer Supported Cooperative Work, CSCW ’12, pp 1277–1286

  9. Dias LF, Steinmacher I, Pinto G, da Costa DA, Gerosa M (2016) How does the shift to GitHub impact project collaboration?. In: IEEE International Conference on Software Maintenance and Evolution, ICSME 2016. EUA, Raleigh

  10. Donohoe C (2017) Say hello to hubot. Online (2017). https://github.com/blog/968-say-hello-to-hubot/. Accessed: Nov-20-2017

  11. Evans J (2017) The hiphop virtual machine. Online (2017). https://www.facebook.com/note.php?note_id= 10150415177928920&hn=2. Accessed: Nov-20-2017

  12. Fogel K (2013) Producing open source software: how to run a successful free software project, 1st edn. O’Reilly Media, CA

    Google Scholar 

  13. GitHub (2017) GitHub help — about stars. Online (2017). https://help.github.com/articles/about-stars/. Accessed: May-4-2017

  14. Gousios G, Pinzger M, Deursen A v (2014) An exploratory study of the pull-based software development model. In: Proceedings of the 36th International Conference on Software Engineering, ICSE 2014, pp 345–355

  15. Hars A, Ou S (2002) Working for free? motivations for participating in open-source projects. Int J Electron Commer 6(3):25–39

    Article  Google Scholar 

  16. Hertel G, Niedner S, Herrmann S (2003) Motivation of software developers in open source projects: an internet-based survey of contributors to the linux kernel. Res Policy 32(7):1159–1177

    Article  Google Scholar 

  17. Hopkins WG (2004) A New View of Statistics. Sport Science

  18. Jensen C, King S, Kuechler V (2011) Joining free/open source software communities: An analysis of newbies’ first interactions on project mailing lists. In: Proceedings of the 44th Hawaii International Conference on System Sciences, HICSS ’10. IEEE, pp 1–10

  19. Jergensen N (2007) Developer autonomy in the freebsd open source project. J Manag Gov 11(2):119–128

    Article  Google Scholar 

  20. Jergensen C, Sarma A, Wagstrom P (2011) The onion patch: Migration in open source ecosystems. In: Proceedings of the 19th ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering, ESEC/FSE ’11, pp 70–80

  21. Jiang J, Lo D, He J, Xia X, Kochhar PS, Zhang L (2017) Why and how developers fork what from whom in GitHub. Empir Softw Engg 22(1):547–578

    Article  Google Scholar 

  22. Kalliamvakou E, Damian D, Blincoe K, Singer L, German DM (2015) Open source-style collaborative development practices in commercial projects using GitHub. In: Proceedings of the 37th International Conference on Software Engineering - Volume 1, ICSE ’15, pp 574–585

  23. Kastrenakes J (2017) Apple’s new programming language swift is now open source. Online (2017). https://www.theverge.com/2015/12/3/9842854/apple-swift-open-source-released. Accessed: Nov-20-2017

  24. Ke W, Zhang P (2010) The effects of extrinsic motivations and satisfaction in open source software development. J Assoc Inf Syst 11(12):784–808

    Google Scholar 

  25. Kitchenham B, Pfleeger S (2008) Personal opinion surveys. In: Shull F, Singer J, Sjøberg D (eds) Guide to Advanced Empirical Software Engineering. Springer, London, pp 63–92

    Google Scholar 

  26. Kraut RE, Burke M, Riedl J, Resnick P (2012) Building Successful Online Communities: Evidence-Based Social Design, chap. The Challenges of Dealing with Newcomers. MIT Press, Cambridge, pp 179–230. http://www.worldcat.org/isbn/0262016575

    Google Scholar 

  27. Landwerth I (2017) A journey through open source: The trials & triumphs in roslyn’s first year of open source. Online (2017). https://blogs.msdn.microsoft.com/dotnet/2015/04/06/a-journey-through-open-source-the-trials-triumphs-in-roslyns-first-year-of-open-source/. Accessed: Jun-4-2017

  28. Marlow J, Dabbish L, Herbsleb J (2013) Impression formation in online peer production: Activity traces and personal profiles in GitHub. In: Proceedings of the 2013 Conference on Computer Supported Cooperative Work, CSCW ’13

  29. Marz N (2017) History of apache storm and lessons learned. Online (2017). http://nathanmarz.com/blog/history-of-apache-storm-and-lessons-learned.html. Accessed: Nov-20-2017

  30. McDonald N, Goggins S (2013) Performance and participation in open source software on GitHub. In: CHI ’13 Extended Abstracts on Human Factors in Computing Systems, CHI EA ’13, pp 139–144

  31. Meneely A, Williams L (2009) Secure open source collaboration: An empirical study of linus’ law. In: Proceedings of the 16th ACM Conference on Computer and Communications Security, CCS ’09, pp 453–462

  32. Nagappan M, Zimmermann T, Bird C (2013) Diversity in software engineering research. In: Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering, ESEC/FSE 2013, pp 466–476

  33. Oreg S, Nov O (2008) Exploring motivations for contributing to open source initiatives: The roles of contribution context and personal values. Comput Human Behav 24(5):2055–2073

    Article  Google Scholar 

  34. Padhye R, Mani S, Sinha VS (2014) A study of external community contribution to open-source projects on GitHub. In: Proceedings of the 11th Working Conference on Mining Software Repositories, MSR 2014, pp 332–335

  35. Pham R, Singer L, Liskin O, Figueira Filho F, Schneider K (2013a) Creating a shared understanding of testing culture on a social coding site. In: Proceedings of the 2013 International Conference on Software Engineering, ICSE ’13, pp. 112–121

  36. Pham R, Singer L, Schneider K (2013b) Building test suites in social coding sites by leveraging drive-by commits. In: Proceedings of the 2013 International Conference on Software Engineerin.g, ICSE ’13, pp 1209–1212

  37. Pinto G, Steinmacher I, Gerosa MA (2016) More common than you think: An in-depth study of casual contributors. In: IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering, SANER 2016, Suita, Vol 1, pp 112–123

  38. plotly.js (2017) Plotly.js open-source announcement in plotly.js. Online (2017). https://plot.ly/javascript/open-source-announcement/. Accessed: Nov-20-2017

  39. Ray B, Posnett D, Filkov V, Devanbu P (2014) A large scale study of programming languages and code quality in GitHub. In: Proceedings of the 22Nd ACM SIGSOFT International Symposium on Foundations of Software Engineering, FSE 2014, pp 155–165

  40. Raymond ES (2001) The cathedral and the bazaar: musings on linux and open source by an accidental revolutionary. O’Reilly & Associates, Inc., Sebastopol

    Google Scholar 

  41. Rebouċas M, Pinto G, Ebert F, Torres W, Serebrenik A, Castor F (2016) An empirical study on the usage of the swift programming language. In: IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering, SANER 2016, Suita, Vol 1, pp 634–638

  42. Rebouças M, Santos RO, Pinto G, Castor F (2017) How does contributors’ involvement influence the build status of an open-source software project?. In: Proceedings of the 14th International Conference on Mining Software Repositories, MSR ’17, pp 475–478

  43. Sobo N (2017) Atom is now open source. Online (2017). http://blog.atom.io/2014/05/06/atom-is-now-open-source.html/. Accessed: Nov-20-2017

  44. Steinmacher I, Wiese IS, Chaves AP, Gerosa MA (2013) Why do newcomers abandon open source software projects?. In: Proceedings of the 2013 6th International Workshop on Cooperative and Human Aspects of Software Engineering, CHASE ’13, pp 25–32. IEEE

  45. Steinmacher I, Wiese IS, Conte T, Gerosa MA, Redmiles D (2014a) The hard life of open source software project newcomers. In: Proceedings of the International Workshop on Cooperative and Human Aspects of Software Engineering, CHASE ’14, pp 72–78. ACM

  46. Steinmacher I, Conte T, Gerosa MA, Redmiles DF (2015a) Social barriers faced by newcomers placing their first contribution in open source software projects. In: Proceedings of the 18th ACM Conference on Computer Supported Cooperative Work & Social Computing, CSCW ’15. ACM, New York, pp 1–13

  47. Steinmacher I, Silva MAG, Gerosa MA, Redmiles DF (2015b) A systematic literature review on the barriers faced by newcomers to open source software projects. Inf Softw Technol 59:67–85. https://doi.org/10.1016/j.infsof.2014.11.001. http://www.sciencedirect.com/science/article/pii/S0950584914002390

    Article  Google Scholar 

  48. Strauss A, Corbin JM (2007) Basics of qualitative research : techniques and procedures for developing grounded theory , 3rd edn. SAGE Publications, CA

    Google Scholar 

  49. Torres MRM, Toral SL, Perales M, Barrero F (2011) Analysis of the core team role in open source communities. In: 2011 International Conference on Complex, Intelligent, and Software Intensive Systems, pp 109–114

  50. Tourani P, Adams B, Serebrenik A (2017) Code of conduct in open source projects. In: 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER), pp 24–33

  51. Tsay J, Dabbish L, Herbsleb J (2014) Influence of social and technical factors for evaluating contribution in GitHub. In: Proceedings of the 36th International Conference on Software Engineering, ICSE 2014, pp 356–366

  52. Vasilescu B, Filkov V, Serebrenik A (2015) Perceptions of diversity on GitHub: A user survey. In: Proceedings of the Eighth International Workshop on Cooperative and Human Aspects of Software Engineering, CHASE ’15, pp 50–56

  53. Wang J, Sarma A (2011) Which bug should i fix: helping new developers onboard a new project. In: Proceedings of the 4th International Workshop on Cooperative and Human Aspects of Software Engineering, CHASE ’11

Download references

Author information

Affiliations

Authors

Corresponding author

Correspondence to Gustavo Pinto.

Additional information

Communicated by: Nachiappan Nagappan

Rights and permissions

Reprints and Permissions

About this article

Verify currency and authenticity via CrossMark

Cite this article

Pinto, G., Steinmacher, I., Dias, L.F. et al. On the challenges of open-sourcing proprietary software projects. Empir Software Eng 23, 3221–3247 (2018). https://doi.org/10.1007/s10664-018-9609-6

Download citation

Keywords

  • Open source software
  • Proprietary software
  • Community engagement
  • Open collaboration
  • Popularity