From 1f6fe25483aaea55e0c596613d39c8783dab9ee3 Mon Sep 17 00:00:00 2001 From: rrrutledge Date: Wed, 6 Dec 2023 12:08:32 -0600 Subject: [PATCH 1/5] Add wiki implementation of InnerSource portal pattern --- patterns/2-structured/innersource-portal.md | 24 +++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/patterns/2-structured/innersource-portal.md b/patterns/2-structured/innersource-portal.md index 141d2fbb7..3bb025eb1 100644 --- a/patterns/2-structured/innersource-portal.md +++ b/patterns/2-structured/innersource-portal.md @@ -52,10 +52,33 @@ Key properties of the portal are: When launching the portal, a communications campaign promoting the addition of InnerSource data files or meta-data to code repositories should be considered, to bolster the number of projects displayed within the portal. +### Implementations + + +#### SAP Project Portal + A [reference implementation](https://github.com/SAP/project-portal-for-innersource) of an InnerSource portal is available on GitHub and open for contributions. It lists all InnerSource projects of an organization in an interactive and easy to use way. Projects can self-register using a dedicated GitHub topic and provide additional metadata. ![Example of an InnerSource Portal](../../assets/img/portal-overview.png "Example of an InnerSource Portal") +#### Wiki + +As a simple way to start, you can set aside a page on an internal wiki for listing out available projects. +An easy way to display this information is in a table with columns giving just a little bit of extra information about the projects. +Try to have just enough columns so that viewers can determine if they want to learn more about the project, but no more. +Too much information will make the page overwhelming and difficult to use. + +Here is a sample set of columns: + +* **Name**. Name of the project (optionally linked to its homepage). +* **Brief Description**. +* **Technology Pre-requisites**. You must use these technologies in order to on-board to the project. +* **Getting Started**. Link to instructions on how to start using the project. +* **Chat**. Link to a chat channel to ask questions about the project. +* **Sponsoring Team**. Seeing if a team is behind the project can help others to have the confidence to use it. +* **Production Since**. How long as the project been used in a production environment? Seeing this information is a rough proxy for its maturity. +* **Contribution**. Link to instructions on how to contribute to the project. + ## Resulting Context * The InnerSource Portal has enabled InnerSource project owners to advertise their projects to an organization-wide audience. Due to this increased visibility they are attracting much larger communities of contributors than ever before. @@ -78,6 +101,7 @@ A [reference implementation](https://github.com/SAP/project-portal-for-innersour * **Airbus** used the [SAP Portal](https://github.com/SAP/project-portal-for-innersource) as a Proof of Concept. It is now using the [Bazaar plugin](https://github.com/backstage/backstage/blob/master/plugins/bazaar/README.md) of [Backstage](https://backstage.io) as the latter became the official developer experience tool internally. It provides a convenient self-registering capability for all the divisions. * **Mercado Libre** use an instance of the [SAP portal](https://github.com/SAP/project-portal-for-innersource) to discover existing InnerSource projects within the organization. * **Mercedes-Benz** is [using](https://opensource.mercedes-benz.com/news/sponsor_innersource_commonsoss) the SAP reference implementation mentioned above for their InnerSource Portal. +* **WellSky** has a simple _Confluence_ page were InnerSource and reusable projects are listed. ## References From 198a5d59f9facf1b5a3887198860eab4856db2ac Mon Sep 17 00:00:00 2001 From: Sebastian Spier Date: Wed, 6 Dec 2023 20:39:20 +0100 Subject: [PATCH 2/5] Remove duplicated newline --- patterns/2-structured/innersource-portal.md | 1 - 1 file changed, 1 deletion(-) diff --git a/patterns/2-structured/innersource-portal.md b/patterns/2-structured/innersource-portal.md index 3bb025eb1..8d7ac20d5 100644 --- a/patterns/2-structured/innersource-portal.md +++ b/patterns/2-structured/innersource-portal.md @@ -54,7 +54,6 @@ When launching the portal, a communications campaign promoting the addition of I ### Implementations - #### SAP Project Portal A [reference implementation](https://github.com/SAP/project-portal-for-innersource) of an InnerSource portal is available on GitHub and open for contributions. It lists all InnerSource projects of an organization in an interactive and easy to use way. Projects can self-register using a dedicated GitHub topic and provide additional metadata. From 000fd07818ca637e5a529cd64ec2e31e46a543ef Mon Sep 17 00:00:00 2001 From: rrrutledge Date: Tue, 2 Jan 2024 07:29:52 -0600 Subject: [PATCH 3/5] Update patterns/2-structured/innersource-portal.md Co-authored-by: Sebastian Spier --- patterns/2-structured/innersource-portal.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/patterns/2-structured/innersource-portal.md b/patterns/2-structured/innersource-portal.md index 8d7ac20d5..f57f74e45 100644 --- a/patterns/2-structured/innersource-portal.md +++ b/patterns/2-structured/innersource-portal.md @@ -100,7 +100,7 @@ Here is a sample set of columns: * **Airbus** used the [SAP Portal](https://github.com/SAP/project-portal-for-innersource) as a Proof of Concept. It is now using the [Bazaar plugin](https://github.com/backstage/backstage/blob/master/plugins/bazaar/README.md) of [Backstage](https://backstage.io) as the latter became the official developer experience tool internally. It provides a convenient self-registering capability for all the divisions. * **Mercado Libre** use an instance of the [SAP portal](https://github.com/SAP/project-portal-for-innersource) to discover existing InnerSource projects within the organization. * **Mercedes-Benz** is [using](https://opensource.mercedes-benz.com/news/sponsor_innersource_commonsoss) the SAP reference implementation mentioned above for their InnerSource Portal. -* **WellSky** has a simple _Confluence_ page were InnerSource and reusable projects are listed. +* **WellSky** has a simple _Confluence Wiki_ page were InnerSource and reusable projects are listed. ## References From b0e96c6fa70a6f97531ed29b37e38f6243111338 Mon Sep 17 00:00:00 2001 From: rrrutledge Date: Tue, 2 Jan 2024 07:35:41 -0600 Subject: [PATCH 4/5] Update patterns/2-structured/innersource-portal.md Co-authored-by: Sebastian Spier --- patterns/2-structured/innersource-portal.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/patterns/2-structured/innersource-portal.md b/patterns/2-structured/innersource-portal.md index f57f74e45..4543483b7 100644 --- a/patterns/2-structured/innersource-portal.md +++ b/patterns/2-structured/innersource-portal.md @@ -70,7 +70,7 @@ Too much information will make the page overwhelming and difficult to use. Here is a sample set of columns: * **Name**. Name of the project (optionally linked to its homepage). -* **Brief Description**. +* **Brief Description**. Explaining the purpose of the project (which problem does it solve?) * **Technology Pre-requisites**. You must use these technologies in order to on-board to the project. * **Getting Started**. Link to instructions on how to start using the project. * **Chat**. Link to a chat channel to ask questions about the project. From 7ce735f242c73966d30d04147c6bf2c62bdb45ec Mon Sep 17 00:00:00 2001 From: rrrutledge Date: Tue, 2 Jan 2024 07:45:59 -0600 Subject: [PATCH 5/5] Respond to PR feedback --- patterns/2-structured/innersource-portal.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/patterns/2-structured/innersource-portal.md b/patterns/2-structured/innersource-portal.md index 4543483b7..e362a616a 100644 --- a/patterns/2-structured/innersource-portal.md +++ b/patterns/2-structured/innersource-portal.md @@ -66,6 +66,7 @@ As a simple way to start, you can set aside a page on an internal wiki for listi An easy way to display this information is in a table with columns giving just a little bit of extra information about the projects. Try to have just enough columns so that viewers can determine if they want to learn more about the project, but no more. Too much information will make the page overwhelming and difficult to use. +Individuals and teams can self-add their projects to the page. Here is a sample set of columns: @@ -74,10 +75,16 @@ Here is a sample set of columns: * **Technology Pre-requisites**. You must use these technologies in order to on-board to the project. * **Getting Started**. Link to instructions on how to start using the project. * **Chat**. Link to a chat channel to ask questions about the project. -* **Sponsoring Team**. Seeing if a team is behind the project can help others to have the confidence to use it. +* **Host Team**. Seeing if a team is behind the project can help others to have the confidence to use it. * **Production Since**. How long as the project been used in a production environment? Seeing this information is a rough proxy for its maturity. * **Contribution**. Link to instructions on how to contribute to the project. +This solution doesn't allow for a fancy display - it is just a wiki table. +If it's important for you to have a snazzy-looking UI, then this idea won't work for you. +Additionally, if you end up with a lot of projects (e.g. nearing 100), +this solution won't scale to allow the search and filtering or auto-updating of project entries that you'll probably need. +It is a good solution for a portal with a few dozen projects, though. + ## Resulting Context * The InnerSource Portal has enabled InnerSource project owners to advertise their projects to an organization-wide audience. Due to this increased visibility they are attracting much larger communities of contributors than ever before.