Link Search Menu Expand Document

User Types in FLOSS

Understanding users impact decision making in projects and is to a degree a very large part of user experience design. Why do you create a feature in a specific way? Here, understanding what user types engange with FLOSS projects are undeniably important to having more coherent and thought out design decisions.


One finding that also appears to be consistent between the project with regards to social interaction is the idea of different user types with different participation profiles. Especially the idea of “regulars” or core users are prevalent in both projects. This entails that certain users are more active than others, and provide more feedback, participate in more discussions and help new users more than the rest of the user base and community. They are also the first users to test beta releases, provide feedback for the bleeding edge changes and so on. These core users are also the ones that are the closest to the project members while still remaining external in some sense.

One Jellyfin contributor said that “We recognize a bunch of our regulars and those of us who like it engage in off-topic talk with them” (Interview, Jellyfin).

Another member noted that they do come and go once in a while, however that he did “(…) see a lot of the same names come up a lot, especially users who report bugs” (Interview, Jellyfin). This notion is also confirmed in another interview where the project member mentions that

“(…) there are a couple of users that come back and work a lot of bugs and they do have very thorough bug reports”. (Interview, Jellyfin)

On the other end of the spectrum, Jellyfin has seen users who vandalize the project through various means. One project member recounted how the community powered translations that are being done from time to time sees vandalization attempts where false translations that are hard to spot are added. He also disclosed that he had encountered people selling illegal Netflix-like services using Jellyfin as their distribution platform (interview, Jellyfin). He alludes to the fact that these users demand or expect features for Jellyfin that are unreasonable for a product meant for home use, without any interest in contributing to the project directly themselves.

To this he says that “they’re free to do what they want, it’s free software, but sometimes it’s a bit frustrating to see people earning a lot of money and complaining so hard when we don’t earn anything.” (Interview, Jellyfin).

Some users are also what could be called “one timers”. These users are “(…) people that just turn up, make one pull request and then leave” (Interview, Jellyfin). These contributors are mostly motivated by issues found in their own daily use, and initially contribute just with the intention of resolving that specific issue or two that they might struggle with. This description also is in accordance with how some of the now project members joined the project as will be explained in the next section. The most prevalent user type to emerge from the findings is the passive user.

According to a survey done in Jellyfin 75% of all users are simply passive users (Interview, Jellyfin).

These users are simply people who use the product without contributing or engaging in any of the social interaction. This suggests that a lot of people are not providing any actual feedback or opinion into the project. This finding especially makes sense when looking at some of the impressive numbers that can be found when searching for Jellyfin or Taskcafe such as docker pulls. Below a model of this system of users types can be found.

User model
Terry, M. A., Kay, M., & Lafreniere, B. J. (2010). Perceptions and practices of usability in the free/open source software (FoSS) community. CHI. https://doi.org/10.1145/1753326.1753476


Discuss

Summary


  • Considering what users your project caters too is the first step in understanding what your project needs to address or focus on.
    • This largely involves doing some user research, and at the very least deciding if a goal of the project is wide user adoption or to focus on specific power users.
  • Almost all users in FLOSS projects are passive.
  • Projects need to value their core users and invite them to join your respective project, not only focusing on code contributions. Invite to discussion surrounding project management, design or documentation, whatever the project needs.