<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-init="VerticalStudentView" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="vertical" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@vertical+block@chap-04-seq-02-ver-01" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="False">
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-04-seq-02-ver-01-html-01">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-init="XBlockToXModuleShim" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="html" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-04-seq-02-ver-01-html-01" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="False">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<div class="edit-link-wrapper"><div class="edit-link"><p style="text-align: right;"><a href="https://gitlab.com/-/ide/project/mooc-floss/mooc-floss/edit/master/-/course/html/chap-04-seq-02-ver-01-html-01.html" target="_blank"><i class="fa fa-pencil mr-1"></i> Edit on Gitlab</a></p></div><div class="edit-link-original-content"><p data-sourcepos="42:1-42:365" dir="auto">On the project we plan to contribute to, it is very useful to be aware of <em>who</em> the actors are. Indeed, ultimately it will be the people from the project who will be deciding whether the contributions will be merged. Understanding who does what and who decides what will be a key element to consider to ensure that the contributions are aligned with the wishes of the maintainers.</p></div></div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-04-seq-02-ver-01-html-02">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-init="XBlockToXModuleShim" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="html" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-04-seq-02-ver-01-html-02" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="False">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<div class="edit-link-wrapper"><div class="edit-link"><p style="text-align: right;"><a href="https://gitlab.com/-/ide/project/mooc-floss/mooc-floss/edit/master/-/course/html/chap-04-seq-02-ver-01-html-02.html" target="_blank"><i class="fa fa-pencil mr-1"></i> Edit on Gitlab</a></p></div><div class="edit-link-original-content"><p>The different types of actors associated with a project are the following:</p>
<p style="text-align: center;"><em>Communities, Organizations and Individuals</em></p>
<p>The term <strong>Communities</strong> refers to all the people and organizations gathering around a project, either as users, contributors or value stakeholders. This includes:</p>
<ul>
<li>Passersby who are interested in the project;</li>
<li>Users and customers of the projects, who might be only using it, but not be involved directly in the project's day to day life;</li>
<li>Contributors, who work on the project. This includes developers but also non-developers contributors like designers, documentation writers, people who answer in the forums, or even managers.</li>
</ul>
<p>An <strong>Organization</strong> refers to an entity that can centralize the legal aspects, like hiring or taking legal decisions. Not all projects are part of an organization, and some projects have multiple organizations involved in their community. Some examples of organizations include:</p>
<ul>
<li>Associations and bylaws</li>
<li>Companies</li>
<li>Foundations (private non profits)</li>
<li>Institutions (public entities)</li>
</ul>
<p><strong>People</strong> who are responsible for governing a project, including leading and maintaining it, are part of communities and/or organizations. The details will depend on the project, and on the level of formalization of the project governance.</p></div></div>
</div>
</div>
</div>
<script type="text/javascript">
(function (require) {
require(['/static/js/dateutil_factory.a28baef97506.js?raw'], function () {
require(['js/dateutil_factory'], function (DateUtilFactory) {
DateUtilFactory.transform('.localized-datetime');
});
});
}).call(this, require || RequireJS.require);
</script>
<script>
function emit_event(message) {
parent.postMessage(message, '*');
}
</script>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-init="VerticalStudentView" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="vertical" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@vertical+block@chap-05-seq-02-ver-05" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="False">
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-05-seq-02-ver-05-html-01">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-init="XBlockToXModuleShim" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="html" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-05-seq-02-ver-05-html-01" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="False">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<div class="edit-link-wrapper"><div class="edit-link"><p style="text-align: right;"><a href="https://gitlab.com/-/ide/project/mooc-floss/mooc-floss/edit/master/-/course/html/chap-05-seq-02-ver-05-html-01.html" target="_blank"><i class="fa fa-pencil mr-1"></i> Edit on Gitlab</a></p></div><div class="edit-link-original-content"><h4>Roles</h4>
<p>Lots of projects have many people helping in them, with a variety of backgrounds and a variety of roles. Most people contribute in the areas they feel most confident with, and do not usually have to know about all domains of the project.</p>
<p>For instance, <strong>translators</strong> will help with the localization, <strong>designers</strong> could help with assets or with the usability of the interface, etc. Bigger projects can even have <strong>project coordinators</strong> making sure that the project is moving in a coherent fashion.</p>
<p><strong>Testers and bug reporters</strong> are first and foremost users. Whether they are using the cutting edge version freshly committed, or stable releases, the time they spend giving feedback to the project about what does not work and documenting issues is paramount to the success of all free software projects.</p>
<p>And of course, all software projects have <strong>developer</strong> contributors, contributing code and fixes.</p>
<p>Most project successes rely on all the contributors being able to collaborate and can feel that their contributions lead to some recognition: a project where bug reporters feel they are not welcome could very soon stop receiving them, leading to the overall quality declining…</p>
<h4>Stays</h4>
<p>We could also classify contributors to many open source projects in a few categories, depending on their involvement in the project:</p>
<p>Some very proficient open source contributors are <strong>drive-by</strong> contributors. Similarly to most contributors to Wikipedia, when they spot an issue, they want it to be fixed and can dedicate some time to it, but won't stay on the project on the long term. The less friction there is to the contribution process (having to find a well hidden place to report bug, having to sign a CLA, etc), the easier it will be for them to contribute.</p>
<p>On the other end of the spectrum, some projects have seen their creators stay at a <strong>maintainer</strong> role in the team for decades.</p>
<h4>Diversity issues</h4>
<p>Unfortunately, there is a long-standing diversity issue in the open source world. It's a <a href="https://en.wikipedia.org/wiki/Diversity_in_open-source_software" target="[object Object]">well documented</a> phenomenon, and while <a href="https://opensourcediversity.org/" target="[object Object]">some organizations</a> are actively trying to progress on these issues, as of 2022 it is still very present.</p></div></div>
</div>
</div>
</div>
<script type="text/javascript">
(function (require) {
require(['/static/js/dateutil_factory.a28baef97506.js?raw'], function () {
require(['js/dateutil_factory'], function (DateUtilFactory) {
DateUtilFactory.transform('.localized-datetime');
});
});
}).call(this, require || RequireJS.require);
</script>
<script>
function emit_event(message) {
parent.postMessage(message, '*');
}
</script>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-init="VerticalStudentView" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="vertical" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@vertical+block@chap-04-seq-02-ver-02" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="False">
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-04-seq-02-ver-02-html-01">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-init="XBlockToXModuleShim" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="html" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-04-seq-02-ver-02-html-01" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="False">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<div class="edit-link-wrapper"><div class="edit-link"><p style="text-align: right;"><a href="https://gitlab.com/-/ide/project/mooc-floss/mooc-floss/edit/master/-/course/html/chap-04-seq-02-ver-02-html-01.html" target="_blank"><i class="fa fa-pencil mr-1"></i> Edit on Gitlab</a></p></div><div class="edit-link-original-content"><p data-sourcepos="64:1-64:411" dir="auto">Identifying the key decision makers and the criteria they use to make decisions is crucial to ensuring our work will get approved. Some good questions to ask yourself are: Who are the maintainers? What are their roles? Which organization do they belong to?</p>
<p data-sourcepos="66:1-66:382" dir="auto">It is also important to identify the users and customers of the project. Taking the time to identify them allows us to better determine their needs and the very reason the project exists and gets worked on. Even if they aren't always part of all the decisions, they need to be kept in mind while working on contributions, or during discussions around changes to make to the project.</p>
<p data-sourcepos="68:1-68:188" dir="auto">Some of the contributors or maintainers might be contributing on behalf of a company, which will also have its own motivations and needs to be met, and those will also influence decisions.</p>
<p data-sourcepos="70:1-70:309" dir="auto">Identifying on which basis people contribute will also help you understand when you can interact with them: when dealing with people who contribute in their spare time, it will be in the evening their time, and during the weekends. With paid staff, they usually will only be around during their working hours.</p>
</div></div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-04-seq-02-ver-02-html-02">
<div class="xblock xblock-public_view xblock-public_view-html xmodule_display xmodule_HtmlBlock" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-init="XBlockToXModuleShim" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="html" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@html+block@chap-04-seq-02-ver-02-html-02" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="False">
<script type="json/xblock-args" class="xblock-json-init-args">
{"xmodule-type": "HTMLModule"}
</script>
<div class="edit-link-wrapper"><div class="edit-link"><p style="text-align: right;"><a href="https://gitlab.com/-/ide/project/mooc-floss/mooc-floss/edit/master/-/course/html/chap-04-seq-02-ver-02-html-02.html" target="_blank"><i class="fa fa-pencil mr-1"></i> Edit on Gitlab</a></p></div><div class="edit-link-original-content"><p>When contributing to a project, it is important to be aware of the actors on it. As mentioned before, they can be companies, individuals, organizations, etc. In many cases, when a company is not dominant in the project and several actors are present, you'll find an organization (a non-profit, or a foundation, for instance).</p>
<p>In the simple cases, the organization and the free software project are the same thing (usually, the organization was created around the project, or to support it). But often, in particular with bigger projects, there can be many organizations and stakeholders in a project.</p>
<p>On the other hand, some bigger organizations can be around lots of projects. For instance, KDE can be seen as an organization even if it has several organizations on specific projects (they have subgroups dedicated to specific projects)</p>
<h3>Examples</h3>
<p>The Inkscape project is an open community without ties to companies, where development decisions are made by the community of the project.</p>
<p>The OpenStack project is part of the OpenInfra Foundation projects, a consortium with many companies involved.</p></div></div>
</div>
</div>
</div>
<script type="text/javascript">
(function (require) {
require(['/static/js/dateutil_factory.a28baef97506.js?raw'], function () {
require(['js/dateutil_factory'], function (DateUtilFactory) {
DateUtilFactory.transform('.localized-datetime');
});
});
}).call(this, require || RequireJS.require);
</script>
<script>
function emit_event(message) {
parent.postMessage(message, '*');
}
</script>
</div>
<div class="xblock xblock-public_view xblock-public_view-vertical" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-init="VerticalStudentView" data-runtime-class="LmsRuntime" data-runtime-version="1" data-block-type="vertical" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@vertical+block@09bfc148016e4d83bd2744df666cdc51" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="False">
<div class="vert-mod">
<div class="vert vert-0" data-id="block-v1:MOOC-FLOSS+101+2021_1+type@drag-and-drop-v2+block@310e98293d784e17ae1af102aba31623">
<div class="xblock xblock-public_view xblock-public_view-drag-and-drop-v2" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-block-type="drag-and-drop-v2" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@drag-and-drop-v2+block@310e98293d784e17ae1af102aba31623" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="True">
<div class="page-banner"><div class="alert alert-warning"><span class="icon icon-alert fa fa fa-warning" aria-hidden="true"></span><div class="message-content">Types of Actors is only accessible to enrolled learners. Sign in or register, and enroll in this course to view it.</div></div></div>
</div>
</div>
<div class="vert vert-1" data-id="block-v1:MOOC-FLOSS+101+2021_1+type@drag-and-drop-v2+block@8f3f766fbc2c46c5af48bdca1d442ec0">
<div class="xblock xblock-public_view xblock-public_view-drag-and-drop-v2" data-course-id="course-v1:MOOC-FLOSS+101+2021_1" data-block-type="drag-and-drop-v2" data-usage-id="block-v1:MOOC-FLOSS+101+2021_1+type@drag-and-drop-v2+block@8f3f766fbc2c46c5af48bdca1d442ec0" data-request-token="71a33384902611ee8c631237928d7ffd" data-graded="False" data-has-score="True">
<div class="page-banner"><div class="alert alert-warning"><span class="icon icon-alert fa fa fa-warning" aria-hidden="true"></span><div class="message-content">Projects and Actors is only accessible to enrolled learners. Sign in or register, and enroll in this course to view it.</div></div></div>
</div>
</div>
</div>
<script type="text/javascript">
(function (require) {
require(['/static/js/dateutil_factory.a28baef97506.js?raw'], function () {
require(['js/dateutil_factory'], function (DateUtilFactory) {
DateUtilFactory.transform('.localized-datetime');
});
});
}).call(this, require || RequireJS.require);
</script>
<script>
function emit_event(message) {
parent.postMessage(message, '*');
}
</script>
</div>