You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: patterns/2-structured/crossteam-project-valuation.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -31,7 +31,7 @@ Such models give us the tool that we need to focus and amplify high-value collab
31
31
The core of all cross-team project value is the idea that we can get more done together than apart.
32
32
Ascribing value to a cross-team effort is an exercise in quantifying _how much more_ is getting done together.
33
33
The exact delta in productivity will vary by domain and project.
34
-
There is a common process, though, by which you can create a model to calculate it.
34
+
There is a common process, by which you can create a model to calculate it.
35
35
36
36
### Explanation
37
37
@@ -66,12 +66,12 @@ Once you have your worst-case bounds you can value your cross-team project outpu
66
66
### Commentary
67
67
68
68
Despite the trappings of rigor, this process does not yield an exact way to measure cross-team project output.
69
-
In-practice, though, it does give a framework by which you can make a sound decision at how to fund this work.
69
+
In-practice, however, it does give a framework by which you can make a sound decision at how to fund this work.
70
70
After having good, reasonable data according to the above explanation, you should fund dedicated development hours toward running the project up to _**at least**_ of the lesser of the following three levels:
71
71
72
72
1. The raw hours saved by the formula above. Since we're all sure that the formula will produce a number that is below the true number of hours saved, you can have confidence that funding the project up to that point is a sure win for you.
73
73
1. The amount of time that it takes to support inner sourced contributions to cross-team projects. Since the contributor would likely have done the work anyway in a one-off fashion, it is worth it to fund the time it takes to facilitate their work going into a shared location.
74
-
1. Whatever feels good to you. One intentional side-effect of having a valuation formula is that it naturally forces measurement of the key points of usage that provide value to consumers.
74
+
1. Whatever feels good to you. One intentional sideeffect of having a valuation formula is that it naturally forces measurement of the key points of usage that provide value to consumers.
75
75
76
76
Those measurements can be understood and consumed in their raw form to provide you with a gut-feel idea of how valuable is the project.
Copy file name to clipboardExpand all lines: patterns/2-structured/praise-participants.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -5,7 +5,7 @@ Praise Participants
5
5
## Patlet
6
6
7
7
After an inner source contribution, it's important to thank the contributor for their time and effort.
8
-
This pattern gives guidance that not only effectively acknowledges the contribution but also endgenders further engagement from the contributor and others.
8
+
This pattern gives guidance that not only effectively acknowledges the contribution but also engenders further engagement from the contributor and others.
9
9
10
10
## Problem
11
11
@@ -21,7 +21,7 @@ A pattern in this area makes it easy to do and ensures that the message comes ac
21
21
22
22
## Forces
23
23
24
-
* You are busy, which makes it easy to forget some of the soft touches like praise and thanks.
24
+
* You are busy, which makes it easy to forget some soft touches like praise and thanks.
25
25
* You may not be someone that is comfortable in social situations or good with words.
26
26
* Peer recognition is very important to job satisfaction and career development.
27
27
@@ -31,7 +31,7 @@ It feels good to anyone to be recognized by others.
31
31
In a professional setting, increased recognition is also an avenue to increased influence and growth.
32
32
Any time someone gives to your inner source project, recognize them with a sincere and qualified "thank you".
33
33
34
-
For non-trivial contributions (all code contributions and also significant time contributions), say thank you via the following mechanisms:
34
+
For non-trivial contributions (all code contributions and significant time contributions), say thank you via the following mechanisms:
35
35
36
36
(1) Call out the person by name in any chat location (e.g. _Slack_) where you organize your project activity. Let everyone know what they did and thank them publicly.
37
37
@@ -40,8 +40,8 @@ Example:
40
40
> Everyone @here give a high-five to @andrew.clegg for updating the _rcs-viewer_ to the latest version of the _hebo-client_ (https://github.com/rcs/rcs-viewer/pull/81).
41
41
Thanks for helping keep this library up-to-date, Andy!
42
42
43
-
(2) Send an email to them and their manager (cc'd) privately thanking them for the contribution.
44
-
For code contributions often-times you can just forward the merge notification mail.
43
+
(2) Email them and their manager (cc'd) privately thanking them for the contribution.
44
+
For code contributions often-times you can just forward the merge notification mail.
Copy file name to clipboardExpand all lines: patterns/2-structured/project-setup/communication-tooling.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,7 +6,7 @@ Communication Tooling
6
6
7
7
An InnerSource project is being used outside the original development team but
8
8
users are having trouble getting help and getting in touch with the project
9
-
team. The idea is to setup and document standard communication tooling that
9
+
team. The idea is to set up and document standard communication tooling that
10
10
allows for discussions to become visible, archived and searchable.
11
11
12
12
## Context
@@ -39,9 +39,9 @@ The goal when streamlining communication channels for InnerSource projects
39
39
should be to align communication around topics, not around certain sets of
40
40
people:
41
41
42
-
- The project should have it's own issue tracker where structured communication, decisionmaking and progress tracking can happen transparently for all host team members but also for downstream users and contributors to follow.
43
-
- The project should have one or more discussion channels that come with less rigid a structure. Typically this will be mailing lists, online forums or even archived chat channels. Usually it is enough to start with just one channel for the project, if traffic increases too much it's helpful to split discussions around project usage from discussions around project development.
44
-
- In addition the project should have one private channel where sensitive communication can happen between [Trusted Committers](../trusted-committer.md) - e.g. adding further Trusted Committers to the host team. This channel should be used with great care such that communication defaults to open and is kept private only under very rare circumstances.
42
+
- The project should have its own issue tracker where structured communication, decision-making and progress tracking can happen transparently for all host team members but also for downstream users and contributors to follow.
43
+
- The project should have one or more discussion channels that come with less rigid a structure. Typically, this will be mailing lists, online forums or even archived chat channels. Usually it is enough to start with just one channel for the project, if traffic increases too much it's helpful to split discussions about project usage from discussions about project development.
44
+
- In addition, the project should have one private channel where sensitive communication can happen between [Trusted Committers](../trusted-committer.md) - e.g. adding further Trusted Committers to the host team. This channel should be used with great care such that communication defaults to open and is kept private only under very rare circumstances.
45
45
46
46
While communication can happen outside of written channels, as much information
47
47
as possible should be brought back to the asynchronous channels.
@@ -71,7 +71,7 @@ the project.
71
71
72
72
Answering questions in those channels means that not only other team members
73
73
can listen in and provide additional information, it also means that other
74
-
users with the same question see (or later on find) the previous answer leading
74
+
users with the same question see (or later find) the previous answer leading
Copy file name to clipboardExpand all lines: patterns/2-structured/project-setup/issue-tracker.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -10,13 +10,13 @@ The InnerSource host team fails to make not only plans and progress but also con
10
10
11
11
A team develops a component that many teams in the organization depend on. It
12
12
uses a standard issue tracker for tracking open bugs and feature requests.
13
-
However the context in each entry is very limited. As a result potential
13
+
However, the context in each entry is very limited. As a result potential
14
14
contributors have no way of knowing what change exactly each issue is talking
15
15
about.
16
16
17
17
## Context
18
18
19
-
The InnerSource project tooling is all setup. However the project issue tracker
19
+
The InnerSource project tooling is all setup. However, the project issue tracker
20
20
is mainly used for sharing progress. In InnerSource projects there are many more
21
21
use cases that an issue tracker can be used for that make remote, asynchronous
22
22
communication easier.
@@ -25,7 +25,7 @@ communication easier.
25
25
26
26
- Contributors would like to understand whether the feature that they are missing is already on the roadmap. With a lot of context missing in issues though it is impossible to decide whether existing issues match the contributing team's needs.
27
27
- As a result a lot of duplicate issues are being opened that the host team has to deal with.
28
-
- As context in open issues is so limited contributors are unable to help the host team by implementing some of the easier issues that are open already. As a result a lot of work remains in the hands of the host team.
28
+
- As context in open issues is so limited contributors are unable to help the host team by implementing some easier issues that are open already. As a result a lot of work remains in the hands of the host team.
29
29
- With a strong focus on verbal communication it is impossible to discern after a couple months or years why a certain feature was being chosen for implementation. As a result refactorings, in particular simplifying the component becomes an exercise in project archaeology and brain picking of people who remember what was discussed.
30
30
31
31
## Solution
@@ -36,14 +36,14 @@ development but also during the planning phase of new features:
36
36
- For bugs, planned features and feature ideas create separate issues. In each of those include as much information as possible so that potential external contributors are able to understand the context. Ideally, in particular for easier changes, include enough information for external contributors to support the host team by implementing the functionality in question.
37
37
- Potentially use the issue tracker as a channel to ask questions. This is in particular helpful if you are lacking other communication sources to tackle user questions.
38
38
- Make use of tags and categories in order to distinguish issues used for different purposes.
39
-
- For starting a brain storming session asynchronously, open an issue for gathering ideas. When discussion is starting to calm down, summarize the points identified in this issue in a separate document. Post that for review as a pull request to drill deeper into individual points that still need clarification. The resulting document can be used to publish the results in other appropriate channels as well as for future reference.
39
+
- For starting a brainstorming session asynchronously, open an issue for gathering ideas. When discussion is starting to calm down, summarize the points identified in this issue in a separate document. Post that for review as a pull request to drill deeper into individual points that still need clarification. The resulting document can be used to publish the results in other appropriate channels as well as for future reference.
40
40
- Most issue tracker implementations allow for issue templates. Make use of those not only to collect commonly needed information for bug reports but also include hints about what kind of information is needed for the other usage types.
41
41
42
42
## Resulting Context
43
43
44
44
- Making more use of the project's issue tracker for communication enables external contributors to follow along and make better decisions on what to contribute.
45
45
- A focus on structured written communication enables host team members to participate remotely.
46
-
- Consistently communicating in writing means that passive documentation on project decisions accumulates as a byproduct instead of needing added attention.
46
+
- Consistently communicating in writing means that passive documentation on project decisions accumulates as a by-product instead of needing added attention.
47
47
- Consistently using public communication channels leads to more humans following a discussion. This means that there are more knowledgeable humans that can answer questions, chime in on open issues, or point out flaws in planned features that would otherwise be found only much later.
48
48
- Moving discussions to a public discussion medium creates an opportunity for potential future contributors to lurk, follow along, get comfortable and learn the ways of the project long before they have the first need to get involved.
0 commit comments