I have to say I have hard time to contribute to open source community: this far my contribution has been
- Map module under review to React Pages
- A simple example for someone asking help on IRC
- and responding some basic questions in IRC for strangers
- Some discussion on document format, including proposal of Stack Overflow as a documentation method - don't know if this had an impact on questions & answers there, at least they said following it
- and other discussion on related technologies (QML) with the core developers
So, maybe a relevant question is why I'm having hard time to contribute to the community. Naturally time management (or lack of it) is one of the main reasons.
However looking my only software contribution, the contribution is extreamly modular and not connected to other parts of the code. This supports von Krogh et al.'s (2003) proposition 2 rather directly. I would also point out experiences in large organizations on onboarding (see Begel & Simon, 2008; Johson & Senges, 2010). Even while the project is not extreamly alrge (~31k lines of code), I have not had the bravehood to start messing around. This is surprising, as for research purposes I'm now working on a code base around the same size and have no problems.
Therefore, we may examine other reasons for non-participation. First, I assume that my participation could be described more as a hobby than need based participation, using the category proposed by Shah (2006). In this case the community control and confortability play a role in participation. I do think the community around IRC is nice. Just to illustrate, a response from the community lead when some contributor (not me) explained that he has been busy due to academic matters:
no worries! i totally know what it's like to try to contribute while at school (i failed terribly at it)
Regarding the control aspect, I don't exactly know how to describe it. People at Facebook pull the strings, but I don't think I mind it. So, yeah: there is no formal governing system in place. For example, my initial thinking about contributing with documentation was affected by the fact that the document format was not clear, and as far as I've been able to parse from messages, still under discussion. So maybe my cry here is not related to control, but rather to the chaos - I'm unsure where to contribute and what to contribute so that it benefits the community.
Von Krogh, G., Spaeth, S., & Lakhani, K. R. (2003). Community, joining, and specialization in open source software innovation: a case study. Research Policy, 32(7), 1217–1241.
Begel, A., & Simon, B. (2008). Struggles of new college graduates in their first software development job. ACM SIGCSE Bulletin, 226–230.
Johnson, M., & Senges, M. (2010). Learning to be a programmer in a complex organization: A case study on practice-based learning during the onboarding process at Google. Journal of Workplace Learning, 22(3), 180–194.
Shah, S. K. (2006). Motivation, Governance, and the Viability of Hybrid Forms in Open Source Software Development. Management Science, 52(7), 1000–1014.