-
Notifications
You must be signed in to change notification settings - Fork 183
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
InnerSource pattern "Creating an InnerSource Strategy" #652
Conversation
💖 Thanks for opening this pull request! 💖 The InnerSource Commons community really appreciates your time and effort to contribute to the project. Please make sure you have read our Contributing Guidelines. If you are submitting a new pattern, the following things will help get your pull request across the finish line! 🏁
This project has a small number of maintainers, volunteering their time to this project. So please be patient and we will get back to you as soon as we can. If we don't acknowledge this pull request after 7 days, feel free to chat to us about it in our Slack workspace. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for sharing this @misappi ! I left some feedback inline, and will resolve the pieces that seem non-controversial (e.g. purely cosmetic/formatting changes).
One general question:
Your pattern made me thing of the existing Document your Guiding Principles. I am not saying that both are after exactly the same but there might be some overlap.
Curious to hear your perspective on this.
|
||
Despite an organization has an InnerSource program, it is challenging to establish InnerSource in that organization. Missing management support and low awareness in some or many development teams are among the reasons. Potentially, the InnerSource program itself is missing clear goals and/or approaches how to achieve those. | ||
|
||
## Context |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The content for the "Context" section should focus on this:
Where does the problem exist? What are the pre-conditions? Unchangeable before the solution goes into place. The content here is often tied to the applicability of the pattern for other readers: "Do I have this same particular situation?"
What can we write here about the given context at an org where this problem exists?
Minor: In terms of formatting we recommend to use bullets, so that one can separate distinct points more clearly.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I turned that paragraph into a list of bullet points, but did not change the content since I am not sure what is required here. At least on a high level, the paragraph explains where the problem exists, IMO. It could be described in further detail. Is that what you mean or would you expect different content?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@misappi we misunderstood each other here. I meant the "Context" section, not the "Problem" section.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
OK, got it. I extended the context paragraph and converted it into a list of bullet points.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@misappi left some comments related to the Context/Forces inline.
Do you want to revert the Problem section to its previous state? Typically we just use prose and no bullets there.
Co-authored-by: Sebastian Spier <github@spier.hu>
Interesting. I did not know that pattern so far. You are right, there is an overlap to the strategy pattern since both are mentioning the purpose of introducting InnerSource to an organization. Since this is the first pattern that I write, I am not sure how patterns are normally tailored at ISC. One possibility that I see is to adjust "Documenting your guilding principles" in a way that it focusses on the principles (and not the purpose - anyway the main part of the pattern is about principles). Purpose and the connection of InnerSource to the goals of an organization and its (business) strategy could be covered in "Creating an InnerSource strategy". Then, both patterns would nicely complement each other - at least IMO. |
|
||
## Context | ||
|
||
- InnerSource is not an end in itself. It must deliver clear benefits to your organization and support its goals |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This reads more like a general statement about InnerSource, than like Context of a specific org. I think you could leave away this bullet entirely without negatively impacting the content.
## Context | ||
|
||
- InnerSource is not an end in itself. It must deliver clear benefits to your organization and support its goals | ||
- If InnerSource and its benefits is mainly explained and positioned in a rather abstract way, it might be difficult to convince management and a critical mass of the development teams |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If I were to rewrite this as "context of an organization that has this challenge", I might write it like this:
- If InnerSource and its benefits is mainly explained and positioned in a rather abstract way, it might be difficult to convince management and a critical mass of the development teams | |
- The program office at the organization has expressed an ambition to follow InnerSource practices throughout the organization. However InnerSource and its benefits have been explained in a rather abstract way, making it difficult to convince management and a critical mass of the development teams. |
|
||
## Forces | ||
|
||
TODO |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Porting these potential forces here from the current "Problem" section.
Are these good "constraints that can be changed at a cost"? Is the solution that you are proposing "changing one or more of these forces in order to solve the problem"?
I am often confused myself between what goes into the Context and Forces section, party because these ideas from a rather scientific context. So I cannot blame you if you are confused here as well :)
TODO | |
- The InnerSource program itself is missing clear goals and/or approaches how to achieve those | |
- Missing management support for the InnerSource program | |
- Low awareness of the InnerSource program in some development teams |
Your idea sounds good too me. Let's keep your PR here as a separate pattern. |
Since it's about goals and (business) strategies of organizations, it is not that easy to be specific since these things are most likely internal/confidential. But I agree to you, we should be as specific as possible. |
We could possibly use an imaginary org and strategy? And then explain the solution suggested in this pattern based on that example? Would require some story telling but could work. |
@misappi I hope my comments on this PR did not get you disheartened to continue working on this pattern? :) As your PR describes a pattern in the "Initial" stage, we can take shortcuts if you like, to get this PR merged in some shape or form, to at least get the pattern integrated in our repo. That will increase discoverability by others. Then you (and others) can continue to improve this pattern in further PRs afterwards. I am also saying that as I would like to prevent this PR from going stale. |
Not at all. I just had no time to work on it.
That make sense. Would be great if you could do that. Thanks! |
I made minor changes but could not push those back to your branch due to a permission issue:
Therefore I pushed straight to This pattern draft is now available here: Let's continue the conversation on slack and in future PRs 🥳 |
Thanks, @spier. Let's do so. |
I created a draft PR to start the discussion about that pattern. By intention, it only contains the most basic sections. Others will be added later based on feedback and the discussion in the community.