Link Search Menu Expand Document

Roles and skill sets in FLOSS projects

Who are the people engaging in FLOSS? What are their background? Does the fact that mostly developers engage in FLOSS impact design decisions? The findings from the study indicate that while developers have a relatively advanced understanding of design principles, in many cases without realizing it, there is still room for improvement.


From the interviews with the two projects it was immediately clear that all of the contributors were developers or at very least technically inclined. Their core competencies vary, however all either work with code related jobs, education or are self taught individuals with interest in the technologies involved with creating software. One such example is a participant who specializes

“(…) in frontend development, so website integrations, Javascript and such.”. (Interview, Jellyfin)

Others are more focused on the backend, such as a the contributor that said he is “(…) a software developer for a telecom company.” (interview, Jellyfin). The founder of Taskcafe is similarly

“(…) a developer first [and as such] designing components from scratch is not [his] strong suit” (Interview, Taskcafe).

One of the interview participants from Jellyfin holds an interesting role that according to himself has raised a few eyebrows in the project.

He accounts that he “(…) kind of calls [himself the] project manager and people are like, ‘what do you mean by that?’, and I’m like, think like your enterprise workplace.” (Interview, Jellyfin).

According to him the role of project manager is a nebulous term in the day to day activities. He does not do much in the way of code however he “(…) watch what other contributors are doing with an eye towards kind of keeping the project moving towards like the goal of, you know, being better” (Interview, Jellyfin). He also manages more actively when the project is nearing a release, where he looks at the existing and new features nearing completion, and as time passes take a more active role in encouraging certain features to be finalized and made ready for inclusion in the stable release candidate (interview, Jellyfin). With that in mind he also manages when feature freeze falls in the process, and whatever testing comes after. He however, also states that he holds no real power in the sense that he can mandate what project contributors chose to work on. In a similar sense he does not get to reject changes based on his judgement of their importance. He verifies that he is subject to the back-and-forth discussion process in that if he likes a given change

“(…) it will get my check mark or if I don’t like the change, I’ll put my feedback in.” (interview, Jellyfin).

In summary, it is clear that the Jellyfin or Taskcafe projects currently do not have anyone doing design contributions that professionally work with such changes.


Discuss

Summary


  • Most contributors in FLOSS projects come from a highly technical background. Even those who might be familiar with design principles are mostly familiar with frontend development, and not necessarily design theory per say.
    • This by its very nature puts design and concepts such as user experience at the bottom of priorities in FLOSS projects.
  • The findings suggest that while other types of contribution types do exist (eg. a project manager), its not typical of FLOSS projects to have team members filling out such a role.
    • In your project, consider what type of contributions might be helpful. What might free up the time of developers to let them focus on their unique skill set?
    • This opens up interesting discussions about how FLOSS projects needs a balance between efficiency in some cases, and having fun in your free time in others.
  • This might also suggest that people with unique skill sets such as design professionals, managers or otherwise needs to be invited, and seek out FLOSS projects more.
    • In addition to this their efforts, or rather how their efforts are perceived by projects members, needs to be more inclusive to allow for contributions that might be higher level than raw code.