-
Notifications
You must be signed in to change notification settings - Fork 206
pattern/junkyard-styled-innersourcing #61
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
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,35 @@ | ||
| ## Title | ||
| * Junkyard styled inner sourcing | ||
| * Finding but deciding not to use the internal component | ||
|
|
||
| ## Context | ||
| Two situations: | ||
|
|
||
| * SW component not designed for reuse because the schedule was too tight and did not allow for the extra effort needed | ||
| * Did not have the knowledge or training to create components that can b reused. | ||
|
|
||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. See other suggestion to pick one context. [test] |
||
| ## Problem | ||
| * How do you encourage people to share whatever code they write? | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Hmm, the pattern title suggests to me that people are sharing, just not stuff that is ready to be reused. How about we rephrase the problem statement to s.th. like Shared code is not reused because it was not written with reuse in mind or is not reusable. |
||
|
|
||
| ## Forces | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @rshanmer : Some of the forces in this pattern are formulated as questions, rather than e. g. tradeoffs. Is this a valid way to phrase forces? |
||
| * People don't share something so others can use it; they only share it for the sake of sharing. They wouldn't mind if no one uses it (a bit of a graveyard: "InnerSource is where modules go to die") | ||
| * A developer might be a person who likes to share their code; one that likes others to read it (and maybe comment on it. But mostly they like to write code. "Hey, I wrote this nifty gzorp and you might like it (but its no skin off my nose if you don't)" | ||
| * the code is crap | ||
| * the code doesn't address any of the company's problems (at the moment anyway) | ||
| * How does the person let others know that the code exists? | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I was wondering if this is a force ... as an idea: The less effort is spent on publicising shared code the less likely it is that it will be found and reused. |
||
| * We want the person to contribute code, so what roadblocks need to be removed so that they continue making their code available? | ||
| * How do we politely take their freely offered code and harden it or otherwise prepare it for production without having the original contributor feel like we are saying their code is crap? | ||
|
|
||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Suggestion for additional force: The more responsive the original author is to requests for changes coming from potential re-users of her code, the more likely it is that it will be reused. |
||
| ## Solution | ||
| * Support all contributions to the shared repository. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I like the idea behind this but I feel this needs to be fleshed out a little. Here are some ideas:
|
||
| * Provide some sort of grading (Alexander marked his patterns with 0, 1 or 2 stars depending upon how convinced he was that it was a good pattern), so that the reader can be aware of what to expect. But how to do that without insulting the contributor? (solution: engage them in the process -- have 2 scores, what they think, and what users think or how many times its been used) | ||
|
|
||
| ## Status | ||
| Brainstormed pattern idea in progress | ||
|
|
||
| ## Authors | ||
| * Georg Grutter | ||
| * Erin Bank | ||
| * Padma Sudarsan | ||
| * Tim Yao | ||
| * Robert Hanmer | ||
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 would argue that the effort for designing SW for reuse should only be spent, if it is crystal clear that it in fact will be reused. Otherwise, YAGNI applies. So either it was clear that it would be reused and it wasn't designed that way for the reasons you mentioned, or it wasn't clear and therefore not designed for reuse (and rightly so).