gvwilson / 10-newcomers

Ten Simple Rules for Helping Newcomers Become Contributors to Open Source Projects
Other
46 stars 3 forks source link

Enabling developers to evaluate if a project is a "good fit" #3

Closed jmostipak closed 5 years ago

jmostipak commented 5 years ago

new contributors will benefit from guidance on how to evaluate their own skill set and match it up with potential projects that would be a good fit with their current abilities and desired learning/contribution trajectory.

igorsteinmacher commented 5 years ago

Brainstorming a bit: I'd add more than only skillset while identifying a good fit. It would be interesting to consider also the "attraction" factor. It can make a difference. There is some literature on attractiveness that we can leverage

dsholler commented 5 years ago

Two comments here:

  1. Do any projects use tools akin to a mastery rubric to assess fit? Mastery rubric paper: Tractenberg, R. E., Umans, J. G., & McCarter, R. J. (2010). A mastery rubric: Guiding curriculum design, admissions and development of course objectives. Assessment & Evaluation in Higher Education, 35(1), 15-32.

  2. Along the lines of Igor's comment, can trajectories through a project be abstracted and generalized in some way for the purposes of this paper? We might consider treating the issue of trajectory separately, where we discuss how to make folks aware of possible trajectories and how to nudge them along (or keep them in a particular position, if desired).

igorsteinmacher commented 5 years ago

I renamed the rule to make it more from the project perspective instead of newcomers' perspective. Posting my first draft in a few moments

igorsteinmacher commented 5 years ago

The first step that newcomers take when they are willing to contribute is to choose a project. Behind this step, there are different forces acting that may lead them to decide to contribute to a specific project. The decision to contribute comes from a reason, a motivation pushing the developer towards open source projects. This can be related to reputation, external needs, but also motives related to learning and giving back to the community. In the latter case, it is important to help newcomers to understand what would be a good fit for them, in terms of their goals and skills.

To attract the developers, and enable them to evaluate whether the project is a good fit for them, the project needs to provide ways for newcomers to evaluate if their skills match with the skills required to contribute to the project. There are two different perspectives that should be taken in this case. Firstly, the project should explicitly state what are the different types of skills required. This information should be easily accessible and guide new members to the tasks they may handle. LibreOffice, for example, provides a way for developers to access the available tasks filtering them by required skills and difficulty [1]. Secondly, from the developers perspective, there should be ways to enable developers to evaluate their skills. In addition to a self-evaluation, tools to support obtaining information from previous contributions may benefit newcomers and projects. Existing tools, like "My GitHub Resume" [2], and academic approaches, like Visual Resume [3], may help to assess the developers' skills. Once projects have it clear what are the required skills to contribute and developers' skills are identified, it is possible to match them, enabling recommendations in terms of "which project may be a good fit" and in terms of "what tasks I may be able to work on".

image

[1] https://wiki.documentfoundation.org/Development/EasyHacks/by_Required_Skill [2] https://resume.github.io/ [3] A. Sarma, X. Chen, S. Kuttal, L. Dabbish, and Z. Wang, Hiring in the Global Stage: Profiles of Online Contributions, Eleventh IEEE International Conference on Global Software Engineering, August 2016, pp. 1-10

dsholler commented 5 years ago

I really like this section, especially how it emphasizes self-evaluation. I'm wondering if we can also put in some references to tools for self-evaluation, and if any of you who work in the teaching space have favorites.

The section also got me thinking: What happens when a project lead or decision-maker determines that the prospective newcomer just isn't a good fit for anything the project is working on at that point in time? Should we say something along the lines of, "Keep your finger on the pulse of other projects in your orbit, so that you might be able to point potential newcomers to other projects where they'd be a better fit?" Just a thought that might be out of scope here.

gvwilson commented 5 years ago

Incorporated into rules.tex in 97f6773