Community Translations of the Standard for Public Code

Contents

  1. Definitie van publieke code
  2. Redenen voor publieke code
    1. Softwarecode == wettelijke code
    2. Traditionele openbare softwareaanbesteding
    3. Technologische soevereiniteit en democratische verantwoording
    4. Het ontwerpen van echt publieke software
    5. Waarden van publieke code
  3. Hoe publieke code werkt
    1. Economie van publieke code
    2. Aanbesteden van publieke code
  4. De doelen van de Standard for Public Code
    1. Voor wie is dit bedoeld
  5. Verdere literatuur
    1. Video’s over publieke code
  6. Doe mee

Voorwoord

De Standard for Public Code is een set criteria die publieke organisaties ondersteunt bij het samen ontwikkelen en onderhouden van software en bijbehorend beleid.

Iedereen die software of beleid ontwikkelt voor het publieke belang kan deze standaard gebruiken om de kwaliteit van publieke diensten te verbeteren en deze kosteneffectiever te maken, met minder risico en meer controle.

Dit voorwoord introduceert het begrip “publieke code” en legt uit waarom dit belangrijk is.

Definitie van publieke code

Publieke code is zowel computercode (zoals software en algoritmes) als beleid dat in een publieke context wordt uitgevoerd, door mensen of machines.

Het betreft de software die is gebouwd om te functioneren op of als publieke infrastructuur, samen met de regelingen voor de productie ervan.

Publieke code moet expliciet worden onderscheiden van reguliere software omdat het werkt onder fundamenteel andere omstandigheden en verwachtingen.

Redenen voor publieke code

Er zijn veel redenen waarom publieke code nu relevant is.

Softwarecode == wettelijke code

Software is publieke infrastructuur.

In de 21e eeuw kan software worden beschouwd als vitale publieke infrastructuur. Het is steeds vaker niet alleen de implementatie van bestaand beleid, maar ook de aanleiding voor nieuw beleid, bijvoorbeeld als algoritmes beslissen welke wijken extra sociale diensten of politietoezicht nodig hebben.

De werking van software, algoritmes en gegevensverzameling zijn kernaspecten geworden in de uitvoering van beleid. Computercode voert nu beleid uit dat via democratische procedures is vastgelegd in wettelijke code. Beide vormen van code vormen de structuur die ervoor zorgt dat de samenleving volgens democratisch bepaalde publieke waarden functioneert; de ene code wordt uitgevoerd door mensen, de andere door machines. Met andere woorden: softwarecode begint steeds meer te lijken op wetgeving.

En daarom moet software aan dezelfde principes van democratisch bestuur onderhevig zijn.

Traditionele openbare softwareaanbesteding

De manier waarop we momenteel publieke software ontwikkelen heeft de publieke dienstverlening niet optimaal bediend.

Publieke organisaties die complete softwareoplossingen inkochten worden nog wel eens verrast door zaken als:

  • hun software kan niet worden aangepast aan veranderend beleid en nieuwe technologie kan niet worden ingezet
  • er is geen toegang meer tot hun gegevens omdat deze zijn opgesloten in propriëtaire systemen
  • er worden steeds hogere licentiekosten gevraagd

Technologische soevereiniteit en democratische verantwoording

Publieke organisaties, ambtenaren en inwoners verdienen beter.

Wij geloven dat de software die onze samenleving aanstuurt niet langer een black box mag zijn die gecontroleerd wordt door externe bedrijven die de onderliggende logica waarop hun software werkt verborgen houden in propriëtaire codebases. In plaats daarvan hebben overheden en de mensen die zij dienen technologische soevereiniteit nodig. Op die manier kunnen ze de werking van publieke software bepalen en controleren, zoals ze dat ook doen met wetgeving. Het is belangrijk voor burgers en maatschappelijk middenveld dat software transparant is en dat er verantwoording over wordt afgelegd.

Het ontwerp van software als essentiële maatschappelijke infrastructuur moet de digitale rechten van burgers respecteren.

Het ontwerpen van echt publieke software

Publieke code vormt de kern van moderne publieke instituties, bepaalt het werk van ambtenaren en beïnvloedt het leven van bijna alle inwoners.

Publieke software moet daarom:

  • transparant zijn
  • verantwoordelijk zijn
  • begrijpelijk zijn voor haar belanghebbenden

Het moet de waarden van de samenleving die het dient weerspiegelen, bijvoorbeeld door inclusief te zijn en niet-discriminerend.

De meeste propriëtaire softwaresystemen die momenteel door publieke organisaties worden gebruikt, voldoen niet aan deze eisen. Publieke code wel.

Waarden van publieke code

Wij beschouwen deze waarden als de kern van publieke code:

  • Inclusief
  • Bruikbaar
  • Open
  • Leesbaar
  • Verantwoord
  • Toegankelijk
  • Duurzaam

Hoe publieke code werkt

Publieke code is open source software bedoeld voor het vervullen van de kerntaken van publieke organisaties. Door gebruik dragen andere organisaties bij aan de software, zodat de ontwikkeling en het onderhoud ervan echte samenwerkingen worden.

Open zijn heeft veel voordelen.

Lokale verantwoordelijkheid en democratische verantwoording worden gewaarborgd wanneer een publieke organisatie hun eigen publieke code implementeert en onderhoudt. Door open te zijn en een bredere bijdragersbasis te hebben, is de software veiliger omdat het profiteert van vele ogen die mogelijke fouten opsporen. Veel bijdragers delen het onderhoudswerk om het functioneel en modern te houden, wat toekomstige technische achterstand (“*technical debt”) vermindert. De gedeelde werklast is nu en in de toekomst duurzamer. De openheid maakt zowel de code als de gegevens in de toekomst gemakkelijker aanpasbaar. De code wordt makkelijker te herzien, te hergebruiken en uit te faseren. Dit alles resulteert in infrastructuur met een lager risico.

Door het bundelen van middelen kunnen publieke organisaties extra aandacht besteden aan hoe ze de software kunnen aanpassen zodat deze het beste werkt in elke lokale context, wat betere gebruikerservaringen creëert voor hun eindgebruikers (inwoners of burgers).

Economie van publieke code

Publieke code biedt een beter economisch model voor publieke organisaties en commerciële bedrijven. Als alternatief voor traditionele softwareaanbesteding zorgt het ervoor dat de lokale controle en economische kansen worden vergroot.

Ontworpen vanaf het begin om open en aanpasbaar te zijn en gegevensportabiliteit te ondersteunen, kan het worden ontwikkeld door intern personeel of vertrouwde leveranciers. Omdat de code open is, kan de publieke organisatie van leverancier veranderen als dat nodig is. Open code vergroot de mogelijkheden voor meekijken en daarvan leren, waardoor de publieke organisatie kleinere contracten kan aanbesteden. Kleinere aanbestedingen maken het gemakkelijker voor lokale kleine en middelgrote ondernemingen om zich daarop in te schrijven. Publieke organisaties kunnen hun eigen softwareaankopen gebruiken om innovatie en concurrentie in hun lokale economie te stimuleren.

Dit kan worden gezien als een investering die leidt tot toekomstige economische groei. Meer leveranciers zullen nodig zijn vanwege de groeiende vraag naar technologie.

Aanbesteden van publieke code

Publieke code kan worden gebruikt en ontwikkeld door permanente interne ontwikkelteams, aannemers of uitbestede leveranciers. Leveranciers van publieke organisaties kunnen publieke code opnemen in hun inschrijvingen.

Om bestaande publieke code te gebruiken, moet u in uw budget en projectontwerp specificeren dat uw nieuwe oplossing die codebase zal gebruiken. Om een innovatieve benadering aan te moedigen bij het aanpassen van de publieke code aan uw context, kunt u de dienst of het resultaat in uw contract beschrijven.

De doelen van de Standard for Public Code

Deze standaard ondersteunt ontwikkelaars, ontwerpers, managers en beleidsmakers bij:

  • het ontwikkelen van hoogwaardige software en beleid voor betere publieke dienstverlening
  • het ontwikkelen van codebases die herbruikbaar zijn in verschillende contexten en in samenwerking kunnen worden onderhouden
  • het verminderen van technische achterstanden (“technical debt”) en het falen van projecten
  • meer controle en beslissingsbevoegdheid over hun IT-systemen
  • het verbeteren van de relaties met leveranciers door een beter economisch model

Potentiële gebruikers van codebases die zijn getoetst aan de Standard for Public Code kunnen verwachten dat deze zeer herbruikbaar, gemakkelijk te onderhouden en van hoge kwaliteit zijn.

De Standard for Public Code doet dit door:

  • het vaststellen van een gemeenschappelijke terminologie voor publieke code-ontwikkeling
  • het vaststellen van kaders om te helpen bij het ontwikkelen van hoogwaardige publieke code
  • het bieden van begeleiding bij het voldoen aan de criteria en het operationaliseren van naleving

De Standard for Public Code is bedoeld om tijds- en technologieonafhankelijk te zijn.

Voor wie is dit bedoeld

De Standard for Public Code is bedoeld voor de mensen die publieke code creëren en hergebruiken:

  • beleidsmakers
  • bedrijfs- en projectmanagers
  • ontwikkelaars en ontwerpers

Deze mensen werken bij:

  • organisaties in de publieke sector
  • adviesbureaus en leveranciers van informatietechnologie en beleidsdiensten aan publieke organisaties

Het is niet gericht op eindgebruikers van publieke organisaties (inwoners of burgers), journalisten of academici.

Verdere literatuur

Video’s over publieke code

Doe mee

Deze standaard is een levend document. Lees onze bijdragersgids om te leren hoe je het kunt verbeteren.