Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pattern/discover-your-innersource #60

Merged
merged 5 commits into from Sep 22, 2017
Merged

Conversation

nyeates
Copy link
Contributor

@nyeates nyeates commented Mar 11, 2017

People don't bother looking for internally developed solutions - they might not find the repo at all or be aware of its existence.

Note that this exists in the master repo already, but that this is meant to start a Pull Request for a proper Review Process.
@nyeates nyeates added 2-structured Patterns with existing instances (Please see our contribution handbook for details) and removed Pattern labels Mar 11, 2017
@rshanmer
Copy link
Contributor

rshanmer commented Apr 5, 2017

Suggestion for a the first sentence in the solution: "Make it easy to find the reusable code."
Then the other bullets support that by offering some ways to resolve the forces to achieve the above "solution".

Also moved Context about Problem
* 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.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Something I would add here is establishing a common communication channel across team boundaries. This might not scale beyond a certain organisation size. My expectation would be that people start splitting this one channel into multiple by topic once traffic gets too high.

## Solution
Make it easy to find the reusable code.

* Pull in Repo names, descriptions and README.md files into the search engine
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What kind of search engine are we thinking of here?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Probably whatever internal search engine people would use to try to find internally available software.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That assumes that such a search engine exists. It seems like some enterprise tooling has this kind of functionality built in, so the systems that a company is using may affect its ability to follow this part of the pattern. In my experience systems like GitHub and npmjs try hard to include project search as a first-class feature. I assume that their enterprise editions to the same, so companies using those tools would have an easier time implementing this advice.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Even if a search engine exists internally, what I find really helpful is to have a one-stop-shop kind of search engine for all relevant communication and documentation. 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.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have examples of what a good search engine solution would be to aggregate many sources of information like that? I've gotten the impression that it's not an easy problem.

- 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.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Another avenue to explore is making it easy for the reusable code to find you. Create ways for the people running shared internal code to discover which other projects are reasonable candidates for adoption so that they can reach out.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you have some examples of what works to solve the discovery problem?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Search through source code at the company for projects that are candidates to use the shared internal tool and then reach out to committers to those repos.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  • 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.

@NewMexicoKid NewMexicoKid changed the title pattern/dont-bother-looking pattern/discover-your-innersource Sep 22, 2017
@NewMexicoKid NewMexicoKid merged commit 8c4df13 into master Sep 22, 2017
@rrrutledge rrrutledge deleted the pattern/dont-bother-looking branch March 18, 2020 13:53
@lenucksi lenucksi added the 📖 Type - Content Work Working on contents is the main focus of this issue / PR label Sep 28, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2-structured Patterns with existing instances (Please see our contribution handbook for details) 📖 Type - Content Work Working on contents is the main focus of this issue / PR
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants