Kirø~$

🇳🇴 NO|🇬🇧 EN
IT/DevOps consultant
Cloud/Solution Architect
Board gamer and sci-fi fan
Ponderer of life mysteries
House owner and Handyman

InnerSource: Åpen kildekode-prinsipper internt i bedriften

InnerSource er en metodikk der en organisasjon anvender åpen kildekode-kultur, praksis og verktøy internt bak bedriftens egen brannmur.

I stedet for at team eier sine kodebaser som lukkede siloer, gjøres kildekoden synlig for alle utviklere i selskapet, og vem som helst kan bidra med feilrettinger, nye funksjoner og forbedringer gjennom pull requests.


🏛️ Hvorfor organisasjonsendringen kreves

Tradisjonelt lider mange større bedrifter under “silosyndromet”:

InnerSource endrer denne dynamikken ved å transformere passive brukere av interne verktøy til aktive bidragsytere.

Tradisjonell Silokultur:
Team A  ---> [ Lukket Repository A ] (Ingen tilgang for Team B)
Team B  ---> [ Lukket Repository B ] (Må bygge sin egen versjon)

InnerSource-kultur:
Team A (Maintainers) <--- PRs / Feedback --- Team B (Contributors)
           \                                   /
            +---> [ Felles Repository ] <-----+

🛠️ Rollene i et InnerSource-prosjekt

Suksessfull InnerSource hviler på to tydelige roller:

  1. Trusted Maintainers (Vedlikeholdere):
    • Eier arkitekturen, versjoneringen og kildekoden til repositoryet.
    • Reviewer og merger Pull Requests fra eksterne team.
    • Sikrer at koden opprettholder høy kvalitet, god testdekning og konsistent dokumentasjon.
  2. Contributors (Bidragsytere):
    • Utviklere fra andre team som trenger en funksjon eller feilretting.
    • Åpner issue, diskuterer løsningen med vedlikeholderne, og sender inn en Pull Request.

🚀 Hvordan implementere InnerSource i praksis

  1. Standardiser dokumentasjon: Hvert repository bør inneholde en klar README.md, CONTRIBUTING.md og ARCHITECTURE.md som forklarer hvordan man setter opp prosjektet lokalt og hvordan bidrag vurderes.
  2. Automatisert CI/CD & Testing: Fordi bidrag kommer fra personer utenfor kjerneteamet, må testdekningen være robust. Automatiske sjekker (linting, enhetstester, sikkerhetsskanning) må kjøre på hver PR.
  3. Ledelsesforankring: Ledelsen må avsette tid til at utviklere kan bidra til andre teams repositories, og anerkjenne maintainere for den tiden de bruker på PR-reviews.

📈 Hvilke gevinster oppnår organisasjonen?


📚 Nyttige ressurser