From 15e49c7772d07be7b1caa7013eb9dd2269bcbe2b Mon Sep 17 00:00:00 2001 From: Nick Yeates Date: Sat, 11 Mar 2017 16:01:27 -0500 Subject: [PATCH 1/5] Created Note that this exists in the master repo already, but that this is meant to start a Pull Request for a proper Review Process. --- dont-bother-looking.md | 45 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 dont-bother-looking.md diff --git a/dont-bother-looking.md b/dont-bother-looking.md new file mode 100644 index 000000000..847dafecb --- /dev/null +++ b/dont-bother-looking.md @@ -0,0 +1,45 @@ +## Title +* Don't bother looking +* Not looking for stuff internally + +## Problem +People don't bother looking for internally developed solutions - they might not find the repo at all or be aware of its existence. + +## Context +* Software component(s) are available internally but users can't easily find these. +* This problem is more likely to occur where there are silos in the company (e.g., larger companies; smaller companies may have fewer opportunities for reuse of internally developed software). +* The company traditionally has been bad at sharing across silos (people don't have the culture of sharing). + +## Forces +* No good internal search engine (or not connected to git repositories; and difficult to make this change happen) +* Users may not know there are common places to find internally developed solutions. +* People don't expect to find solutions internally. +* Many silos in the company; difficult to reach the developer base across those silos (a communications problem). +* People might not want to use internal SW because they don't believe it will be helpful + - might not be maintained + - might have poor reusability + - if someone put out a SW internally, the expectation is that they wouldn't have time to support it (vs. open source options) + +## Solution +* Pull in Repo names, descriptions and README.md files into the search engine +* Implement process change to first check for internal solutions for this problem +* Tool with a central view (but people are more inclined to google externally than look internally) +* Concierge service (guide) to help product people find stuff. Might not scale but could be helpful in the beginning. +* Need some very visible lighthouse projects that start using inner source components and make positive statements about the inner source program. + +## Known instances + +## Desired Resulting Context +* Internal components are easily visible +* Developers looking for code can search for it and find it quickly. +* Developers are now looking internally for software components +* Search results are combined (internal and external) + +## Status +Brainstormed pattern idea in progress + +## Authors +* Georg Grutter +* Erin Bank +* Padma Sudarsan +* Tim Yao From 6673b57ed6963ed38a61fdaf3810f3e2cb9133ae Mon Sep 17 00:00:00 2001 From: Tim Yao Date: Tue, 5 Sep 2017 13:43:41 -0500 Subject: [PATCH 2/5] Implemented Bob's comment Also moved Context about Problem --- dont-bother-looking.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/dont-bother-looking.md b/dont-bother-looking.md index 847dafecb..977077c8c 100644 --- a/dont-bother-looking.md +++ b/dont-bother-looking.md @@ -1,15 +1,17 @@ ## Title * Don't bother looking -* Not looking for stuff internally -## Problem -People don't bother looking for internally developed solutions - they might not find the repo at all or be aware of its existence. +## Also Known As +* Not looking for stuff internally ## Context * Software component(s) are available internally but users can't easily find these. * This problem is more likely to occur where there are silos in the company (e.g., larger companies; smaller companies may have fewer opportunities for reuse of internally developed software). * The company traditionally has been bad at sharing across silos (people don't have the culture of sharing). +## Problem +People don't bother looking for internally developed solutions - they might not find the repo at all or be aware of its existence. + ## Forces * No good internal search engine (or not connected to git repositories; and difficult to make this change happen) * Users may not know there are common places to find internally developed solutions. @@ -21,6 +23,8 @@ People don't bother looking for internally developed solutions - they might not - if someone put out a SW internally, the expectation is that they wouldn't have time to support it (vs. open source options) ## Solution +Make it easy to find the reusable code. + * Pull in Repo names, descriptions and README.md files into the search engine * Implement process change to first check for internal solutions for this problem * Tool with a central view (but people are more inclined to google externally than look internally) From 8879d396fc70f49c701d1f99258517f0f15feeed Mon Sep 17 00:00:00 2001 From: Tim Yao Date: Fri, 22 Sep 2017 15:37:58 -0500 Subject: [PATCH 3/5] Update dont-bother-looking.md --- dont-bother-looking.md | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/dont-bother-looking.md b/dont-bother-looking.md index 977077c8c..6f4aec374 100644 --- a/dont-bother-looking.md +++ b/dont-bother-looking.md @@ -1,11 +1,23 @@ ## Title -* Don't bother looking +* Discover Your InnerSource ## Also Known As -* Not looking for stuff internally +* Not looking for stuff internally +* Don't bother looking +* Find it Inside ## Context * Software component(s) are available internally but users can't easily find these. +* This problem is more likely to occur in large, federated companies where different organizational units operate as silos. +* Historically, the company does not have a culture of sharing code across silos. + +## Discussion on +* Comments may appear in the timeline but not with the file once it is edited (github)? +* https://github.com/paypal/InnerSourcePatterns/pull/60 +* If only X knew what X knew; the internal search engine is bad. No one can find anything because it is difficult to add things to the search index. +* We have similar challenges getting data sources pulled into the search engine. PayPal is building a project called Agora to do this and they are planning to open source it. +* Github Enterprise and npmjs have built-in searches on meta-data. Enterprise that opts into these tooling will get some of that functi +* Software component(s) are available internally but users can't easily find these. * This problem is more likely to occur where there are silos in the company (e.g., larger companies; smaller companies may have fewer opportunities for reuse of internally developed software). * The company traditionally has been bad at sharing across silos (people don't have the culture of sharing). @@ -25,11 +37,13 @@ People don't bother looking for internally developed solutions - they might not ## Solution Make it easy to find the reusable code. -* Pull in Repo names, descriptions and README.md files into the search engine -* Implement process change to first check for internal solutions for this problem +* Pull in Repo names, descriptions and README.md files into the search engine assuming that a search engine exists. Note: a one-stop-shop kind of search engine for all relevant communication and documentation is difficult to attain. Even when using Github's enterprise offering, people often deploy additional systems like wikis to host content orthogonal to what is in the code repositories, slack channels (or IRC), mailing lists (or even nntp servers), some place to store stuff written down in office formats, search over personal e-mail etc. Several of these systems come with search built-in, but integrating this content in one search box or even just deploying a federated search engine across all sources often doesn't come off-the-shelf. +* Implement process change to first check for internal solutions for this problem. * Tool with a central view (but people are more inclined to google externally than look internally) * Concierge service (guide) to help product people find stuff. Might not scale but could be helpful in the beginning. * Need some very visible lighthouse projects that start using inner source components and make positive statements about the inner source program. +* Establish a common, asynchronous communication channel (e.g., like slack or metamorph or yammer) across team boundaries. This might not scale beyond a certain organisation size. It is possible people will start splitting this one channel into multiple channels by topic once traffic gets too high. Note: having one channel for many users of one tool might be considered an anti-pattern because they can't find it unless they already know about it. +* PLACEHOLDER FOR RUSS ## Known instances @@ -38,6 +52,7 @@ Make it easy to find the reusable code. * Developers looking for code can search for it and find it quickly. * Developers are now looking internally for software components * Search results are combined (internal and external) +* See [Improved Findability](https://github.com/paypal/InnerSourcePatterns/blob/master/poor-naming-conventions.md) (aka Poor Naming Conventions or Badly Named Piles) as a related pattern. ## Status Brainstormed pattern idea in progress From e4bf834a24140e704d6a049b654bd88565394ac6 Mon Sep 17 00:00:00 2001 From: Tim Yao Date: Fri, 22 Sep 2017 15:47:41 -0500 Subject: [PATCH 4/5] Update dont-bother-looking.md --- dont-bother-looking.md | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/dont-bother-looking.md b/dont-bother-looking.md index 6f4aec374..77d2b08e5 100644 --- a/dont-bother-looking.md +++ b/dont-bother-looking.md @@ -43,15 +43,18 @@ Make it easy to find the reusable code. * Concierge service (guide) to help product people find stuff. Might not scale but could be helpful in the beginning. * Need some very visible lighthouse projects that start using inner source components and make positive statements about the inner source program. * Establish a common, asynchronous communication channel (e.g., like slack or metamorph or yammer) across team boundaries. This might not scale beyond a certain organisation size. It is possible people will start splitting this one channel into multiple channels by topic once traffic gets too high. Note: having one channel for many users of one tool might be considered an anti-pattern because they can't find it unless they already know about it. -* PLACEHOLDER FOR RUSS +* Encourage (and reward) owners of reusable code to use the same search engine to continually search for products that are candidates for use and adoption of the reusable code but not currently doing so. +* Consider creating a marketplace for marketing InnerSource programs (management can use this mechanism to know which InnerSource projects to fund, but seeing how the marketplace reacts). ## Known instances -## Desired Resulting Context + +## Resulting Context * Internal components are easily visible * Developers looking for code can search for it and find it quickly. * Developers are now looking internally for software components * Search results are combined (internal and external) +* Process changes, establishing a common communications channel, and encouraging and rewarding owners of reusable code to use the same search engine can contribute to changing the corporate culture. Transformation begins from the grassroots but requires strategic involvement of thought leaders. * See [Improved Findability](https://github.com/paypal/InnerSourcePatterns/blob/master/poor-naming-conventions.md) (aka Poor Naming Conventions or Badly Named Piles) as a related pattern. ## Status @@ -62,3 +65,6 @@ Brainstormed pattern idea in progress * Erin Bank * Padma Sudarsan * Tim Yao + +## Acknowledgements +* Contributions from Russ Ruttledge, Ofer Hermoni and Robert Hanmer From 121425b34082c261777ef28d896b6aafdacfbc95 Mon Sep 17 00:00:00 2001 From: Tim Yao Date: Fri, 22 Sep 2017 15:48:59 -0500 Subject: [PATCH 5/5] Rename dont-bother-looking.md to discover-your-innersource.md --- dont-bother-looking.md => discover-your-innersource.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename dont-bother-looking.md => discover-your-innersource.md (100%) diff --git a/dont-bother-looking.md b/discover-your-innersource.md similarity index 100% rename from dont-bother-looking.md rename to discover-your-innersource.md