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
People cannot find the internally developed solutions that they need due to poor naming conventions applied to InnerSource projects.
7
+
Badly Named Piles
8
8
9
9
## Context
10
10
11
-
- Reusable software components exist and are accessible.
12
-
- The company is large, siloed and does not have a history of code sharing and collaboration.
13
-
- The volume of inner source contributions is high.
14
-
- A search engine exists, but required fixes to discover code reliably would be costly, complex.
11
+
Reusable Software component(s) are available internally but users can't easily find them.
12
+
This problem is more likely to occur in large, federated companies where different organizational units operate as silos.
13
+
Historically, the company does not have a culture of sharing code across silos.
14
+
15
+
## Problem
16
+
17
+
People can't find the internally developed solutions that they need due to poor naming conventions.
15
18
16
19
## Forces
17
20
18
-
- Search engine issues (such as lack of connection to codes sources) lead to problems with findability
19
-
- The code is findable, but information on ownership is not provided.
21
+
- Enough people are contributing things to inner sourcing that it is becoming hard to find components.
22
+
- Poor internal search engine (or not connected to git repositories; and difficult to make this change happen)
23
+
- Users may not be able to find the people responsible even if they know where the common places are.
20
24
- People become discouraged from engaging in inner source when they search and can't find what they need.
21
-
- It can be difficult enough to find stuff in github, this is compounded if names are cryptic and keywords aren't used.
22
-
- Renaming components can lead to broken builds.
25
+
- It can be difficult enough to find stuff in GitHub, this is compounded if names are cryptic and keywords aren't used.
23
26
24
27
## Solution
25
28
26
-
- Improve findability of components by using meaningful names.
27
-
- Choose a naming scheme that references the coponents context (e. g. the
28
-
owning organization, products in which it is used)
29
-
- Add metadata to components
30
-
- In the component description
31
-
- Tag the repository (_validated_)
32
-
- Pull Repo names, descriptions, and README.md files into the search
33
-
engine (not the code itself)
34
-
- Enforce naming conventions for components by making them a precondition for
35
-
entering the automated release process. (_validated at PayPal_)
36
-
- Establish a _concierge service_ (guide) to help people find components. Might
37
-
not scale but could be helpful in the beginning.
38
-
- Encourage the community to identify redundancy and make recommendations for
39
-
the better component to use and thus deduplicate. Could be a dedicated role
40
-
within a company, someone with a complete overview of what is going on
29
+
Improve findability within a repository. don't use code names for projects; put keywords into descriptions.
30
+
note: problem/pattern: solution exists but people aren't following it
31
+
32
+
- Use meaningful project name;
33
+
- Use tagging (tag repositories) (validated)
34
+
- Use labels
35
+
- Pull Repository names, descriptions, and README.md files into the search engine (not the code itself)
36
+
- Instate a process change to first check for internal solutions for this problem
37
+
- Concierge service (guide) to help product people find stuff. Might not scale but could be helpful in the beginning.
38
+
- Encourage the community to identify redundancy and make recommendations for the better package to use. Could be a dedicated role within a company, someone with a complete overview of what is going on.
41
39
42
40
## Known instances
41
+
None known as of yet---this is a pattern idea until it is proven.
43
42
44
43
## Desired Resulting Context
45
44
@@ -53,12 +52,13 @@ People cannot find the internally developed solutions that they need due to poor
0 commit comments