Door Tijs Hofmans

Nieuwscoördinator

De overheid versus broncode

Een rechtszaak voor openbaarheid

17-03-2021 • 06:00

147 Linkedin

Broncode

Het enige wat Jos van den Oever wil, is af en toe naar een Tweede Kamerdebat op zijn telefoon kijken, maar dat kan niet. Daarom vocht hij zich in de afgelopen twee jaar helemaal naar de Raad van State. Zijn strijd staat symbool voor de worsteling van de Nederlandse overheid met opensourcesoftware en beschikbare broncode. Woensdagochtend dient de zaak van Van den Oever bij de hoogste algemene bestuursrechter, de Bestuursafdeling van de Raad van State.

Jos van den Oever gebruikt Firefox OS. Toegegeven, hij is een van de weinigen, maar het werkt wel. Voor werk gebruikt hij LineageOS, en hij wil een PinePhone met Plasma Mobile erop, want, zoals hij zelf zegt: "Ik ben een KDE-man." Bovendien, zegt hij, is het belangrijk dat het besturingssysteem van zijn telefoon te bestuderen en aan te passen is. Het mag duidelijk zijn: Van den Oever houdt van opensourcesoftware. Hij wil niet aan iOS, of aan Android met alle Google-diensten, en gebruikt Linux op zijn pc, maar loopt daarbij soms tegen problemen aan. Een van die problemen draait om de Debat Direct-app.

Debat Direct is een app die is gebouwd door het bedrijf Videodock in opdracht van de Tweede Kamer. Met de app is het mogelijk om debatten in het parlement live te bekijken of achteraf terug te kijken. Om de app te gebruiken, moet je wel een besturingssysteem van Apple of Google gebruiken. Als je dat niet wil, zoals Van den Oever, heb je pech. Van den Oever is het daar niet mee eens en heeft al sinds 2018 een procedure lopen waarbij hij toegang wil hebben tot de broncode van de app. Die wil hij dan reverse-engineeren om te gebruiken op zijn eigen telefoon. Het gekke is dat een groot deel van de broncode al lang openbaar is, maar daar kan Van den Oever op dit moment niets mee. Hij pleit voor meer open software en vrij beschikbare broncode bij de Nederlandse overheid.

Debat Direct

Meer openheid

De overheid heeft een moeizame relatie met ict. Grote projecten gaan regelmatig fout en de kennis over technologie in de Kamer is niet al te best. Toch lijken politici vaak ambitieus te zijn op dit gebied, bijvoorbeeld als het gaat om broncode. Het pleiten voor openbare broncode is niet langer voorbehouden aan de Piratenpartij of uitzonderingen als D66'er Kees Verhoeven. Steeds vaker gaan er binnen de overheid geluiden op om alle code voortaan openbaar te maken. Sinds kort gaat dat gepaard met discussie over algoritmes. Het kabinet viel vanwege de toeslagenaffaire, die deels was veroorzaakt door onduidelijke algoritmes die Nederlanders onterecht als fraudeur aanmeldden. Sindsdien willen veel partijen een toezichthouder voor algoritmes en meer openbaarheid ervan. Broncode wordt daar soms bij genoemd, al gaat die discussie nog veel langer terug, langer zelfs dan tot 2018, toen Van den Oever zijn strijd rondom Debat Direct begon.

Hij strijdt al sinds januari van dat jaar voor het openbaar maken van de code van een overheidsapp. Of beter gezegd, voor de mogelijkheid om die code ook daadwerkelijk te kunnen gebruiken. Debat Direct is er niet voor Linux of alternatieve mobiele besturingssystemen. In 2018 schreef hij een brief aan Kamervoorzitter Arib met een verzoek om de broncode. Bijna een jaar later werd zijn verzoek afgewezen en begon een langlopend juridisch traject, dat hij nauwkeurig heeft gedocumenteerd op broncode.org.

Wet hergebruik van overheidsinformatie

Van den Oever beroept zich op de Wet hergebruik van overheidsinformatie om de broncode te kunnen bekijkenVan den Oevers visie over de openbaarheid van broncode komt deels voort uit zijn werk bij de stichting NLnet, maar hij beroept zich in deze zaak op meer dan alleen een filosofie rondom de openheid van de overheid. "Er is een wettelijke onderbouwing waardoor de overheid de broncode zou moeten geven", zegt hij. Dat is de Wet hergebruik van overheidsinformatie. Die stelt dat als informatie openbaar is, burgers de 'herbruikbare vorm' moeten kunnen kunnen opvragen. Van den Oever geeft zelf het voorbeeld van een grafiek in een pdf-document. Daarvan kan een burger onder de Who de onderliggende data opvragen in 'het formaat zoals de informatie bij de met een publieke taak belaste instelling aanwezig is' - ofwel bijvoorbeeld een spreadsheetformaat. "In de memorie van toelichting op die wet wordt uitgelegd waar dat voor bedoeld is. Als er iets gemaakt wordt met geld van de overheid, moet de informatie daarvan voor zoveel mogelijk toepassingen te gebruiken zijn." Met andere woorden: Van den Oever wil de herbruikbare vorm van data achter de app hebben om daar zelf mee aan de slag te gaan.

De Wet hergebruik van overheidsinformatie is niet met broncode in het achterhoofd in het leven geroepen. Dat hoeft ook niet; de overheid pleit al jaren voor het gebruik van opensourcesoftware. Het is een sentiment dat soms nieuw lijkt; bij de verkiezingen van woensdag pleiten verschillende partijen ervoor dat de overheid meer broncode openbaar moet maken, bleek uit een inventarisatie van Tweakers.

Al in april 2020 werd open broncode de norm bij de overheid. Toenmalig staatssecretaris Raymond Knops van Binnenlandse Zaken schreef toen een brief aan de Tweede Kamer over precies dat onderwerp. Kern van zijn boodschap is een 'open, tenzij...'-beleid dat de overheid in de toekomst gaat voeren. "Ik sta achter het principe dat software die met publieke middelen is ontwikkeld, zoveel mogelijk aan de samenleving wordt teruggegeven", schreef Knops. Het 'tenzij' kan dan duiden op bijvoorbeeld veiligheidsbelangen of als er 'vertrouwelijke werkwijzes van de overheid, zoals opsporing en toezicht, worden geschaad'.

Er is open source en er is open source

Met alleen het nieuwe wetsvoorstel is de zaak niet meteen opgelost. Knops' plan volgt na decennia van plannen en wensen om code openbaar te maken; het is niet alsof dat nu ineens een nieuwe ingeving is. De vraag is dan ook waarom dat niet eerder is gebeurd. Nico Rikken van de Free Software Foundation Europe, die Van den Oever bijstaat tijdens de zaak, denkt dat het vooral een managementprobleem is. Code openbaar maken heeft namelijk heel wat voeten in de aarde en levert volgens hem niet per se veel op. "De situatie rondom CoronaMelder is een goed voorbeeld van hoe je een app samen met een betrokken community bouwt", zegt hij tegen Tweakers. CoronaMelder is daarin wel een uitzondering; bij het gros van de softwareprojecten zal niet snel zo'n community ontstaan.

CoronaMelder werd in de openheid ontwikkeld.

'Open source maken van code' betekent meer dan dat je alleen de code ergens online gooit en vervolgens klaar bent en koffie kunt gaan drinken. Je moet in ieder geval altijd door de code heen lopen om te kijken of er geen wachtwoorden of persoonsgegevens zijn achtergebleven. Hetzelfde geldt voor de geschiedenis van code. Dat kost al tijd en er is nog een tweede aspect. Rikken zegt dat het zeker mogelijk is om code openbaar te maken - vandaar dat hij ook bij de FSFE werkt en Van den Oever bij staat - maar hij legt ook uit waarom het voor sommige organisaties moeilijk te regelen is. "Sommige overheidsinstanties zullen zo best denken dat ze de code open publiceren as is, omdat we gewoon transparant willen zijn. Een echt opensourceproject kost echter tijd. Je moet daar een community omheen bouwen. Dat betekent dat je regels moet opstellen en afspraken moet maken. Denk bijvoorbeeld aan wat je wil dat er gebeurt met pull requests, hoe lang je erover doet voordat die worden opgepakt. In zulke projecten moet je investeren voordat je ermee aan de slag kunt gaan."

Dat kost tijd die zowel ontwikkelaars als ambtenaren niet altijd willen en kunnen besteden. Voor een belangrijke en interessante app zoals CoronaMelder, met veel maatschappelijke en technisch ingewikkelde vraagstukken, is het opzetten van en werken met zo'n community een mooie uitdaging. Er zijn echter meer dan genoeg voorbeelden waarbij een app niet dat momentum krijgt. Rikken noemt parkeersystemen in lokale steden en platforms die milieurapporten categoriseren. "Wie zit er te wachten op een systeem om parkeerbeleid af te dwingen dat bovendien vrij specifiek is voor Nederland? Als daar geen community voor is, dan nemen veel overheidsinstellingen niet de moeite de code te publiceren." In Rotterdam werd bijvoorbeeld software ontwikkeld voor milieuzones. Een ambtenaar die de software wilde delen met de gemeente Amsterdam zag een actieve community als voorwaarde voor het publiceren van de broncode. Maar omdat dat niet gegarandeerd kon is het maar de vraag of de software echt openbaar wordt. Rikken: "Die drempel was er niet geweest als men vanaf het begin de broncode al vrij beschikbaar had gesteld."

Bedrijven

Bij opensourcesoftware is het belangrijk een community op te bouwen, maar dat is moeilijkEr zit ook veel verschil tussen het openbaar maken van bestaande code en van nieuw te schrijven code. Dat komt grotendeels doordat de overheid veel te maken heeft met externe bedrijven. Hoewel de overheid de afnemer en dus de eigenaar van de code is, kan een ontwikkelaar er niet zomaar toe worden verplicht om bestaande code op internet te gooien. Zoals Rikken het zegt: "Dat is toch alsof je vraagt naar het geheim van de smid." Het zou weliswaar best kunnen om die code te openbaren, maar je jaagt bedrijven tegen je in het harnas waarmee de overheid soms al jarenlang samenwerkt.

Om die reden is het ook makkelijker om nieuwe code in de toekomst openbaar te maken dan oude, bestaande code met terugwerkende kracht op GitHub te publiceren. Rikken: "Met een nieuwe aanpak zijn de spelregels vooraf duidelijk. Anders zeg je tegen die bedrijven: Bedankt dat je ons twintig jaar lang hebt geholpen, maar nu gaan we het ineens anders doen."

In beroep

Er lijken dus genoeg redenen te zijn om ook de Debat Direct-code achter te houden. Opvallend is wel dat de Tweede Kamer zich niet beroept op die redenen in de zaak van Van den Oever. Het verzoek werd afgewezen omdat de Tweede Kamer vond dat de informatie niet openbaar was. Bovendien valt de Tweede Kamer niet onder de Wet openbaarheid van bestuur en is het niet mogelijk documenten op te vragen die nog niet openbaar zijn. Van den Oever redeneert dat de apps openbaar zijn en dat dus de overheidsalgoritmes openbaar zijn. "De broncode is de herbruikbare variant van die algoritmes en is dus op te vragen." Daarnaast zei de Tweede Kamer dat openbaarmaking 'de veiligheid van de Staat
zou kunnen schaden.'

Wat uiteindelijk volgde, was een lange discussie die zich voornamelijk richtte op juridische grondslagen en semantiek. De discussie werd technischer van aard. Zo voert de Tweede Kamer in een van de stukken aan dat JavaScript gecompileerd moet worden voordat een computer het kan uitvoeren.

"Uiteindelijk was hun belangrijkste argument: broncode is niet hetzelfde als de app", vertelt hij, en die app was openbaar. Daarmee bedoelen ze dat de code in de app geobfusceerd is: de originele functienamen en commentaarregels zijn verwijderd. Die oorspronkelijke vorm van de algoritmes, de broncode, heb je nodig om een app te kunnen hergebruiken. Als ik die niet nodig had, had ik het hele beroep op de Who niet hoeven doen." De Tweede Kamer argumenteerde ook dat Debat Direct bestaat uit twee delen: zowel de app als de code die serverside draait. Die vormen één geheel en het zou onveilig zijn die informatie openbaar te kunnen maken, stelde de Kamer begin 2020 in een rechtszaak, waar Van den Oever nu tegen in beroep is gegaan.

Licenties

Het gekke aan Van den Oevers verhaal is dat het eigenlijk grotendeels overbodig is. De broncode van de app is namelijk gewoon beschikbaar, ontdekte hij een tijd geleden. Door na de uitspraak van de rechtbank in Overijssel onder de motorkap van de site te kijken, vond Van den Oever alle benodigde code, via de bijbehorende source maps. Die zijn nodig om de originele JavaScript in de code te zien. Die code wordt vaak verborgen, bijvoorbeeld om software sneller te maken of om bepaalde delen geheim te houden voor concurrenten. Van den Oever hoefde die source maps dus niet op te vragen en had op die manier veel van de informatie om zijn app te maken. Het was het ontbrekende puzzelstukje.

De code staat gewoon online, maar de juiste licentie ontbreekt nogZelfs nadat hij alle nodige informatie eindelijk in bezit had, vond Van den Oever niet dat hij klaar was. Sterker nog, het gaf hem alleen maar meer reden om door te gaan met zijn procedure. "Toen ik het zag, heb ik gelijk een appelschrift naar de Raad van State gestuurd. Ik schreef dat de meeste broncode gewoon al online staat en dat een licentie nog ontbreekt."

Zo'n licentie is nodig om de broncode niet alleen te kunnen opvragen en doorlezen, maar ook om die te kunnen hergebruiken. Die ontbreekt nu nog en niet alleen voor Debat Direct. De Tweede Kamer biedt de code aan onder een Creative Commons BY-ND-licentie, zegt Van den Oever, al staat er op de website dat die alleen van toepassing is op tekst. Met een CC-BY-ND-licentie mag een gebruiker de code gebruiken, maar geen aangepaste versie verder distribueren. Van den Oever wil dan ook dat de Raad van State een andere licentie verplicht stelt, die hergebruik wél mogelijk maakt.

Licenties voor opensourcesoftware zijn er in veelvoud, zegt Nico Rikken van de Free Software Foundation Europe. De Creative Commons BY-ND-licentie, zegt hij, is 'niet typisch' voor software zoals Debat Direct. Hij verwijst naar de definitie die de Open Source Initiative-stichting hanteert. Die bestaat uit tien regels waaraan vrije software zou moeten voldoen. "Creative Commons valt niet binnen die definitie", zegt hij. "Je moet code niet alleen kunnen lezen, je moet het ook mogen gebruiken. Dat is de grap, sommige ontwikkelaars zetten code op GitHub en zeggen 'nu kun je het gebruiken', maar zonder licentie is dat niet hoe het werkt."

Van de zeventig of tachtig gangbare softwarelicenties is volgens Rikken 'een handvol' geschikt om te gebruiken, zoals de MIT-licentie of GPL. Uiteindelijk is de kern van Van den Oevers zaak niet puur en alleen de gebruikte licentie, zegt Rikken. "Want de Tweede Kamer doet het voorkomen alsof de broncode helemaal niet eens gepubliceerd is."

De toekomst

De overheid probeert al twintig jaar om opensourcesoftware te gebruiken, al sinds de motie-Vendrik in 2002 werd aangenomen. Dat is lang. Van den Oevers zaak richt zich ook voornamelijk op een uitzondering. De zaak is niet symbolisch en gaat waarschijnlijk niet leiden tot precedentwerking. Toch lijken dingen langzaam te veranderen, vindt Nico Rikken. Hij ziet een cultuurverschil met vroeger. "Met het nieuwe wetsvoorstel van Knops is er een volwassener blik op softwareontwikkeling. De kwestie wordt nu strategischer benaderd dan met de idealistischere houding die er vroeger was. Toen was de houding: "Hoe vet zou het zijn als we dit allemaal met elkaar konden delen." Er was een veel socialer element, maar nu wordt er veel pragmatischer gekeken. Er zijn veel meer bedrijven die open software aanbieden."

Vanaf 2021 moet alle nieuwe software van de overheid openbaar zijn. Dat lijkt dus de goede kant op te gaan, maar er zijn wat kanttekeningen. Het gaat om precies hetzelfde probleem als wat Rikken eerder schetste. Overheidsorganisaties moeten 'per geval schatten of de maatschappelijke baten opwegen tegen de kosten van het vrijgeven van de broncode', schrijft staatsecretaris Knops in zijn brief. Die wijst daarbij precies naar de investeringen die openbaarmaking met zich meebrengt. De tijd moet leren wat dat in de praktijk gaat betekenen.

En Van den Oever? Die heeft bijna genoeg informatie om een app te kunnen maken voor zijn Purism-telefoon. Waarom dan toch de zaak die woensdag speelt? Hij heeft nog meer broncode nodig en via een licentie moet hij toestemming hebben om die te mogen hergebruiken. "Bovendien kan de Tweede Kamer de api aanpassen en dan moet ik de broncode opnieuw opvragen."

En, 'omdat de Kamer zich tegen de wil van haar Kamerleden afzet', komt er toch wat activisme naar boven. "Ik wil dat de Tweede Kamer zegt: Wij zijn een publieke instantie, we verzorgen communicatiekanalen met het parlement en we willen daarin zo transparant mogelijk zijn. Dat doet ze op veel andere vlakken al. Kijk maar de opendataportal. Uit al dit blijkt dat de zaak zeker nog nodig is: ik heb nog meer broncode nodig en via een licentie moet ik toestemming hebben om die te mogen hergebruiken. De Tweede Kamer, het centrum van onze democratie, is niet transparant."

Uiteindelijk draait de zaak dus toch om iets fundamenteels: hoe open mag en moet de overheid zijn? Wat de Raad van State daarvan vindt, horen we over een aantal weken.

Dit artikel kun je gratis lezen zonder adblocker

Alle content op Tweakers is gratis voor iedereen toegankelijk. Het enige dat we van je vragen is dat je de advertenties niet blokkeert, zodat we de inkomsten hebben om in Tweakers te blijven investeren. Je hoeft hierbij niet bang te zijn dat je privacy of veiligheid in het geding komt, want ons advertentiesysteem werkt volledig zonder thirdpartytracking.

Bekijk onze uitleg hoe je voor Tweakers een uitzondering kunt maken in je adblocker.

Ben je abonnee? Log dan in.

Reacties (147)

147
144
81
37
9
54
Wijzig sortering
Het verhaal gaat heel breed over open source, maar iedereen weet dat zeker als het om kosten gaat dat het niet altijd de beste oplossing is. Ook kijkend naar gebruikersgemak, zeker in bepaalde sectoren, is sommige open source software heel erg vanuit een dev ontwikkeld, met programmer-UI's, en niet vanuit een brede gebruikersbasis (in mijn sector lijkt een hoop geschreven te zijn vanuit de visie van een cartograaf en niet van iemand die het met weinig moeite naar dienstverlening voor duizenden/tienduizenden gebruikers wil plaatsen).

Als we nou eens minder strict naar open source zouden kijken, erkennen dat het de moeite waard is, zeker voor dingen die vanuit de overheid als maatwerk worden aangevlogen (dan zeg ik: 100% open source), maar als het aankomt op producten zoals de Debat Direct app waar Jos den Oever mee bezig is, dat we misschien juist eenvoudiger de open source kant loslaten (immers er lijkt voor een off-the-shelf product gekozen te zijn), maar eerder aandringen op open API's?

Ook in mijn sector (icoontje geeft het aan, GIS) zijn een hoop open source producten die zeker in big picture/grote organisaties het gewoon eigenlijk "helemaal niet" zijn. Mega dure (zeg dan €120k/server) software is vaak goedkoper over 5 jaar dan open source zelfs, als een organisatie op ~1200 gebruikers of meer uit komt. Als je nou zegt: prima. Dure closed-source software ís bewezen beter dan 30 open source producten aan elkaar plakken en voor elk vraagstuk een dev team aan de bak zetten... MAAR... die dure closed source software moet met open API's werken, en zaken als OAuth ondersteunen... dan denk ik dat je er toch ook bent? Als je alles van data opslag (OGC SFS) tot ontsluiting (WMS, esri Mapservice, WFS(-t), FeatureService, WCS, i3S, WPS, etc...) afdwingt, en documentatie meelevert waarmee je, áls je een Jos den Oever bent van de GIS, alle front-end functionaliteit kan realiseren die een server aanbied dankzij de open API's (of zelfs meer want meer vrijheid met de API dan misschien door de eerste opdrachtgever is geïmplementeerd), en je hebt als overheid je due diligence gedaan en zit ook qua data-lineage en storage niet in een vendor lockin (mocht je na 5 jaar toch voor een FOSS-GIS willen gaan bijvoorbeeld), dan ben je er toch ook?

Het verhaal ligt, zeker met data-systemen, denk ik wel wat genuanceerder dan "alles moet maar open source", zeker als het ook aankomt op GPLv3... nogmaals: ik ben zelf een fan van open source software. Ik draag ook bij/compile ook zelf, maar niet van hoe GPLv3 is opgezet.
Het verhaal gaat heel breed over open source, maar iedereen weet dat zeker als het om kosten gaat dat het niet altijd de beste oplossing is.
Het is inderdaad niet altijd de beste oplossing, maar meestal wel. Bij proprietary of closed source software blijf je iedere keer opnieuw de hoofdprijs betalen en ben je afhankelijk van één leverancier. Daarnaast moet je ook betalen voor ondersteuning en wederom ben je afhankelijk van die ene leverancier. Darom kun je beter Vrije Software gebruiken zodat je alleen voor de daadwerkelijke ontwikkelkosten en ondersteuning hoeft te betalen. Als de leverancier onredelijk is heb je altijd de mogelijkheid om het werk aan een andere partij te geven. (Dat is natuurlijk niet goedkoop maar je hebt in ieder geval de keuze).
Ook kijkend naar gebruikersgemak, zeker in bepaalde sectoren, is sommige open source software heel erg vanuit een dev ontwikkeld, met programmer-UI's, en niet vanuit een brede gebruikersbasis (in mijn sector lijkt een hoop geschreven te zijn vanuit de visie van een cartograaf en niet van iemand die het met weinig moeite naar dienstverlening voor duizenden/tienduizenden gebruikers wil plaatsen).
Je moet die software zien als basis waar je een userinterface bovenop kan leggen. Uiteraard zal er wel iemand voor de ontwikkeling moeten betalen. Maar je begint met meer dan wanneer je vanaf 0 zou beginnen.
Als we nou eens minder strict naar open source zouden kijken, erkennen dat het de moeite waard is, zeker voor dingen die vanuit de overheid als maatwerk worden aangevlogen (dan zeg ik: 100% open source), maar als het aankomt op producten zoals de Debat Direct app waar Jos den Oever mee bezig is, dat we misschien juist eenvoudiger de open source kant loslaten (immers er lijkt voor een off-the-shelf product gekozen te zijn), maar eerder aandringen op open API's?
Je hebt beiden nodig. Het grote doel is dat we controle hebben over de software in ons leven. Toegang tot de broncode en open API's zijn deel daarvan. Maar het zijn middelen, geen doelen op zich. Als je enige doel is om de videostream van Debat Direct af te kunnen spelen dan is het gebruik van open protocollen en bestandsformaten genoeg.

Maar als je je zorgen maakt of die software wel "eerlijk" is dan heb je niks aan open protocollen. Ik wil bijvoorbeeld weten of die app registreert welke debatten ik kijk en dat doorgeeft aan de geheime dienst of aan een reclamebureau. Ik wil weten of ik wel alle debatten te zien krijg of dat bepaalde onderwerpen voor mij verborgen worden. Ik wil weten of de app stiekem het volume harder zet bij sommige sprekers en zachter bij anderen. Dat klinkt misschien een beetje paranoide voor een app als Debat Direct, maar die app is natuurlijk maar een voorbeeld. Als het gaat om software om onze bommenwerpers te bedienen of om het luchtalarm af te laten gaan dan worden dat soort vragen opeens erg belangrijk.
Ook in mijn sector (icoontje geeft het aan, GIS) zijn een hoop open source producten die zeker in big picture/grote organisaties het gewoon eigenlijk "helemaal niet" zijn. Mega dure (zeg dan €120k/server) software is vaak goedkoper over 5 jaar dan open source zelfs, als een organisatie op ~1200 gebruikers of meer uit komt. Als je nou zegt: prima. Dure closed-source software ís bewezen beter dan 30 open source producten aan elkaar plakken en voor elk vraagstuk een dev team aan de bak zetten... MAAR... die dure closed source software moet met open API's werken, en zaken als OAuth ondersteunen
Geld is eigenlijk geen factor in dit debat dat over vrijheid en openheid gaat, het is vooral een randvoorwaarde. Maar ik denk dat op lange termijn het gebruik van open systemen goedkoper is omdat je niet steeds het wiel opnieuw hoeft te laten uitvinden door software bedrijfjes die je steeds opnieuw laten betalen voor dezelfde functionaliteit.

Ik zie die Debat Direct overigens maar als voorbeeld van een groter probleem. Als nu zou blijken dat deze ene app echt niet open source gemaakt kan worden zonder idiote kosten te maken dan wil ik dat wel accepteren als we maar zorgen dat bij de volgende applicatie niet weer dezelfde fout wordt gemaakt. En dat zie ik wil gebeuren als we beginnen met concessies te doen.

En laten we wel wezen, zo'n app als Debat Direct is niet heel complex of bijzonder. Het is een dertien-in-een-dozijn app die je bij iedere softwareboer kan laten ontwikkelen en waarvoor geen diepgaande integregatie nodig is met andere systemen of exotische software. Veel meer standaard dan dit wordt het niet. Ik wil niet negatief doen over de app want die is op zich prima gebouwd, maar heel bijzonder is het niet. Als het hier niet lukt dan gaat het nergens lukken.
Het verhaal ligt, zeker met data-systemen, denk ik wel wat genuanceerder dan "alles moet maar open source", zeker als het ook aankomt op GPLv3... nogmaals: ik ben zelf een fan van open source software.
Het is zeker veel genuanceerder, maar "alles moet open zijn" zou de default moeten zijn voor de overheid. Dat daar af en toe van moet worden afgeweken is onvermijdelijk, maar het gaat om de basishouding.
Ook kijkend naar gebruikersgemak, zeker in bepaalde sectoren, is sommige open source software heel erg vanuit een dev ontwikkeld, met programmer-UI's, en niet vanuit een brede gebruikersbasis
Dat heeft natuurlijk weinig met licenties te maken, en meer met geld. Veel software die jou vrijheid garandeerd wordt geschreven door kleine organisaties, groepen of individuen die niet het geld hebben voor een UI ontwerper. Andersom, VLC en Firefox hebben vanaf het begin af aan altijd al UI ontwerpers gehad en sinds Blender er 1 in dienst heeft, gaat het daar ook behoorlijk goed.
Mega dure (zeg dan €120k/server) software is vaak goedkoper over 5 jaar dan open source zelfs
Als jij open source wilt voor de prijs... dan houdt jij jezelf voor de gek. Vrije software biedt jou garanties zoals een leverancier die jou niet kan afpersen via een vendor-lock of firmware sleutels. de GPL 3 beschermd jou zelfs tegen patenten misbruik. Als je evenveel uit geeft aan open software als je aan gesloten software doet, dan heb je een hele andere ervaring.

Ik zie open source bij de overheid dus ook niet als iets wat per se efficiënter hoeft te zijn, maar ik vindt wel dat juist de overheid niet zomaar gesloten code mag gebruiken om zijn burgers te bedienen. Het feit dat je een telefoon moet hebben van een Amerikaanse multinational om een debat te kunnen volgen, is te zot voor woorden. Daarom dat ik Jos ook zeker steun en ik hoop dat het hem lukt om een verandering bij de overheid teweeg te brengen.
Ik steun hem ook zeker. Op het gebied van die telefoon. Maar laat ik dan ook vrij zijn om te zeggen dat er genoeg (dominant) open audio/video codecs zijn die érg goed zijn, waar je met een redelijk open API als 'verpakking' met toegankelijke websockets voor meta-informatie uiteindelijk door in principe een open API hetzelfde resultaat zou kunnen krijgen. Eventueel zou je zelfs gewoon van VLC gebruik kunnen maken áls client voor debat direct als de documentatie/gekozen video implementatie maar goed genoeg is. En dat is de essentie van wat ik hier neerzet: laten we de code en de API/data even los van elkaar zien. Als het laatste maar open/gedocumenteerd is, dan had Jos zelf een app kunnen bouwen, en wie weet wat er met alle debatten (en machine learning) dan nog meer had gekund.
Als het laatste maar open/gedocumenteerd is, dan had Jos zelf een app kunnen bouwen, en wie weet wat er met alle debatten (en machine learning) dan nog meer had gekund.
Je begrijpt dat het compatibel maken met een andere browser waarschijnlijk 1000x minder werk is dan het schrijven van een hele cliënt? Het punt is dat wij allemaal hebben betaalt voor het voorwerk en in dit specifieke geval is het enige dat in de weg staat een bureaucratische handeling.
In dit specifieke geval, de GIS wereld, niet helaas. Er is één dominante speler, ESRI, en die heeft de GIS markt bij de lurven en kladden. Zelfs serieus door de EU gesubsidieerde open source alternatieven vinden geen tractie in de GIS wereld, tot het punt dat er een valide alternatief te vinden is voor het ArcGIS "enterprise class" ecosysteem. Aan de randen wordt wat geknaagd door bijvoorbeeld QGis of GRASSGis op de desktop, maar zodra je in de buurt komt van een compleet ecosysteem met oa een centrale database, waar naast desktopcliënts ook mobiele apps op werken, kom je vanzelf bij hun uit. Wij hebben als bedrijf ooit een leuke poging gedaan om een mobiele inspectie (android) app te maken, maar zodra daar enige tractie uit kwam, er er ook vergelijkbare dingen in andere landen gingen spelen omdat niet iedereen hun beta iOS only appje wilde, gaf Esri inc even gas, en bliezen ze alles uit het water met hun veel beter geïntegreerde apps, die werken met Arcmap, hun desktop gis waarmee iedereen op school werkt. Dat laatste komt rechtstreeks uit het microsoft handboek, en werkt ook in de GIS wereld even goed.
In dit specifieke geval, de GIS wereld, niet helaas. Er is één dominante speler, ESRI, en die heeft de GIS markt bij de lurven en kladden. Zelfs serieus door de EU gesubsidieerde open source alternatieven vinden geen tractie in de GIS wereld, tot het punt dat er een valide alternatief te vinden is voor het ArcGIS "enterprise class" ecosysteem. Aan de randen wordt wat geknaagd door bijvoorbeeld QGis of GRASSGis op de desktop, maar zodra je in de buurt komt van een compleet ecosysteem met oa een centrale database, waar naast desktopcliënts ook mobiele apps op werken, kom je vanzelf bij hun uit. Wij hebben als bedrijf ooit een leuke poging gedaan om een mobiele inspectie (android) app te maken, maar zodra daar enige tractie uit kwam, er er ook vergelijkbare dingen in andere landen gingen spelen omdat niet iedereen hun beta iOS only appje wilde, gaf Esri inc even gas, en bliezen ze alles uit het water met hun veel beter geïntegreerde apps, die werken met Arcmap, hun desktop gis waarmee iedereen op school werkt. Dat laatste komt rechtstreeks uit het microsoft handboek, en werkt ook in de GIS wereld even goed.
Stel nu dat de hele EU zou zeggen "Hey Esri, wij kopen jullie software niet meer". Hoe lang zou het duren voor de aandeelhouders van Esri opdracht geven om een manier te zoeken om de EU tevreden te stellen? Als Esri niet meewerkt verdienen ze niks meer aan de code en niks meer aan ondersteuning. In mijn ervaring zit de bulk van het geld in ondersteuning. Het zou in dat geval dus verstandiger zijn om de broncode te openbaren zodat je verder kan gaan met ondersteuning verkopen.

Natuurlijk is bovenstaande een beetje een ideale wereld, maar volgens mij klopt het principe wel.

Overigens zal het altijd zo zijn dat het kiezen van software een compromis is. Zelfs als de softwaren van Esri in alle gevallen beter is vanuit technisch oogpunt gezien dan zullen er nog altijd gevallen zijn waarin een ander GIS ook goed genoeg is. Daar is dan een kans om een brughoofd te slaan voor een GIS dat wel Vrije Software is.

Het is uiteindelijk vooral een kwestie van prioriteiten stellen zoals het afwegen van de korte termijn en de lange termijn.

[Reactie gewijzigd door CAPSLOCK2000 op 17 maart 2021 16:25]

Dan zou het RIVM geen corona dashboard meer hebben, zouden zo ongeveer al hun ruimtelijke modellen dood in het water liggen, zouden alle mobiele apps van oa de waterschappen het niet meer doen, en zo verder. Daar heeft de EU geen "quick fix" voor liggen, en hun eerdere pogingen die ik al schetste, geven geen hoop op een snelle reactie als ze doen wat jij voorstelt.
Als je evenveel uit geeft aan open software als je aan gesloten software doet, dan heb je een hele andere ervaring.
Waarom? Volgens mij is het voorbeeld van @Umbrah dat je óf in één klap een ton neerlegt voor een lifetime licentie op een kant en klaar pakket met een installer en support en patches dat álles doet wat je wil, of het aan elkaar knopen van dertig losse opensourcepakketten waarvan de interoperabiliteit niet gegarandeerd is, die moeten worden onderhouden door developers en beheerders die je óók moet betalen, die mogelijk breken wanneer ze onafhankelijk van elkaar geüpdatet (of gedropt) worden, enzovoorts.
Open vs closed source zegt niks over de kwaliteit. Als deze app open gemaakt wordt krijgt die niet opeens "een programmer-UI". Het heeft, zoals gezegd, alles te maken met dat grote ontwikkelteams doorgaans closed-source maken en kleine teams open-source.

Ook vergelijk je "dure closed-source" als 1:1 vervanging voor "30 verschillende open-source die aan elkaar geknoopt moeten", iets wat ook niet waar is. Nogmaals, het open zijn van de broncode zegt in principe niks over de functionaliteit. Er kan ook prima "dure open-source" gemaakt worden waarin alles in 1 product kan, mocht je dat willen. Alleen, wat je nu stelt als een absoluut nadeel van open kan juist een kracht zijn wat je bij closed niet zo vaak ziet. Open-source software is vaker gericht op interoperabiliteit met andere software in de vorm vannopen protocollen, standaarden en formaten. Dit zie je bij closed software veel minder, daar is het vaak geen eis om buiten het (wellicht vendor-specifieke) ecosysteem te kunnen praten. Daarom geeft "open-source" vaak juist de mogelijkheid (niet per se de verplichting) om 30 open producten aan elkaar te knopen als dat kan om je doel te bereiken, waar dat met closed software niet voor de hand ligt. En zoals met alles moet het gewoon onderhouden worden. Dat kan zelfs met 30 open producten nog steeds door een bedrijf gedaan worden wat daarvoor verantwoordelijk is, zonder dat het hele product from scratch gebouwd hoeft te worden.

Ik proef echter in jouw reactie een onterecht zwart-wit-beeld dat alle open oplossingen zonder enige vorm van support(mogelijkheden) komen en door het neefje van de manager ooit aan elkaar geknoopt zijn op een tweedehandsje ergens in een kelder, waarna er nooit meer naar omgekeken wordt, en dat deze situatie bij "dure closed-source" nooit voorkomt. De mate van onderhoud die ergens ingestopt wordt is niet afhankelijk van het soort software, maar slechts van de mate van onderhoud die ergens ingestopt wordt.

Naast dat het wmb fair is om te eisen dat dergelijke apps gewoon open-source moeten zijn als ze ontwikkeld zijn met gemeenschapsgeld (dat maakt het bijv. heel makkelijk om de app incl look-and-feel te porten naar een ander platform) moeten inderdaad de gebruikte APIs ook open, gedocumenteerd en vrij toegankelijk zijn. Dat is dus niet of of, maar en en. Het probleem nu is dat beide niet open zijn. Met het openen van de broncode van de app krijg je indirect ook toegang tot de API.
Het kost toch niets meer om dat bedrijf te verplichten hun code online te gooien met een licentie die hergebruik faciliteert? Dat is het enige wat nodig is, het bedrijf kan profiteren van evt hulp van anderen, maar het probleem is dat mensen het niet kunnen gebruiken, niet hoe het bedrijf het ontwerpt.
Ja en toch ga je jouw code anders opschrijven als je weet dat het publiek op GitHub staat dan als je weet dan dat het closed source is en alleen in de repo van je werkgever.

Even een quick & dirty workaround toepassen zit er dan niet meer in.
Klinkt juist als een argument voor open source. Waarom zou je een product af willen leveren met quick and dirty workarounds, en waarom zou de overheid met zo'n bedrijf in zee moeten gaan? Volgens mij is de kans dat zo'n workaround later nog fatsoenlijk wordt opgelost nihil, met alle latere gevolgen van dien.
Ik vraag me dat ten zeerste af, heb je daar een bron voor?

Je schrijft code om een probleem op te lossen voor een klant, en doet dit doorgaans naar je beste kunnen. Het zou niet moeten uitmaken hoeveel mensen hiernaar kijken; als je dit in een private repo (of: closed source) doet, ben jij alsnog degene die de boel mag gaan debuggen wanneer er problemen optreden voor die klant.
Ik vraag me dat ten zeerste af, heb je daar een bron voor?
We zijn allemaal mensen. Als jij iets functioneels schrijft (mag ook documentatie zijn) voor bijvoorbeeld jezelf dan schrijf je dat toch net even iets anders op dan als je weet dat er 1, 10, 100 of meer meelezen. Toch?

Hoe meer mensen potencieel het zullen gaan lezen hoe meer aandacht je het gaat geven.

@DataGhost
Exact dat. Ik ben ook voor open source oplossingen bij de overheid.

Daarnaast werkt het ook 2 kanten op. Als jij dit netjes opzet dan zijn er gewoon mensen die in hun vrije tijd verbeteringen voor je schrijven en aandragen.
Hoe meer mensen potencieel het zullen gaan lezen hoe meer aandacht je het gaat geven.
Nee, sorry, die vlieger gaat voor mij niet op.

Iedere developer heeft wel eens tegen z'n scherm gescholden "Wie heeft dit geschreven en wat dacht diegene wel niet?", om er dan na een Git Blame achter te komen dat 'ie het zelf was, zes maanden geleden. Je schrijft goede code (leesbaar, onderhoudbaar, doordacht) niet voor de computer; de computer kan alles uitvoeren wat je schrijft.

Je schrijft goede code zodat je collega's je werk kunnen controleren of overnemen, of zodat jij over een paar maanden of een paar jaar nog begrijpt wat er staat. De "quick & dirty workaround" die je noemt, crasht net zo hard, of de broncode nou openbaar wordt gemaakt of niet, en zou dus nooit mogen worden geschreven, open source of niet. En guess what; het gebeurt in beide gevallen.
Dat zou heel gemakkelijk zijn, maar is vaak niet eens mogelijk.

Veel software maakt gebruik van componenten die aangekocht worden. Dat is lang niet altijd open source en zelfs als het open source is, mag je het niet zomaar online zetten.
Als een ontwikkelaar alle broncode open source maakt, geeft hij daarbij ook veel eigen ontwikkelingen vrij waar best veel tijd ingestoken kan zijn en die in heel veel producten van het bedrijf wordt gebruikt. Dat soort ontwikkelingen kan het verschil uitmaken of je opdrachten wel of niet binnen kan halen. Als je dat soort "handigheidjes" prijs geeft, geef je dat "gratis" aan je concurrenten. Die kunnen vervolgens door jouw investering opdrachten binnen halen waarbij jij juist een voorsprong had.

De overheid zou wel meer gebruik moeten maken van open source waar het gaat om publiek toegankelijke services. Bij andere (grote) projecten zou het gebruik van open source (ontwikkelde) software een goed idee zijn, maar dat moet dan al bij de aanbesteding duidelijk zijn. Voor (delen van) software die toegang tot databases hebben, lijkt het mij geen goed idee om dat (volledig) open source te maken.
Ik snap het hele probleem niet helemaal.

1. Hij wil het debat kijken op zijn telefoon, en dat kan nu niet.

Ik vind dat een eerlijke vraag. Waarbij de echte vraag misschien moet zijn, waarom is er een app nodig om te kijken en is er geen openbare website met stream linkjes en een gangbare codec.

Als je dat hebt is het probleem opgelost, en kan hij maken wat hij wil.
Die is er wel gewoon https://www.tweedekamer.nl/debat_en_vergadering/livedebatten
Ik zie het probleem dus ook niet echt...
Er is natuurlijk gewoon een website met een simpele livestream, geen app voor nodig. De app geeft je soms wat extra informatie zoals de naam van de persoon die op dat moment aan het woord is enzo.
IK zie een oplossing voor het probleem ;-). Je voegt deze info toe aan de stream.
Je stelt indirect de vraag of deze software wel voor de Tweede Kamer geschreven is, of dat er een off-the-shelf product van een look en een informatiebron is voorzien, en wat daarvan dan de relevantie is.

Die relevantie lijkt mij groot: immers, alleen wat in opdracht van de overheid is gemaakt, moet conform die wet in bruikbare vorm gedeeld worden. En dat lijkt ook uiterst werkbaar in deze: de fabrikant houdt dan z'n gesloten app gewoon voor zichzelf, en de overheid deelt de API voor de informatiebron en eventueel de materialen die het mogelijk maken dezelfde look & feel te bereiken op een ander platform. (De noodzaak, basis voor en (on)wenselijkheid van dat laatste lijkt me een losse discussie.)

Dan trek je de discussie over open source maken wat de overheid bouwt, los van of de overheid uitsluitend open source zou moeten gebruiken (en dus niets commercial off-the-shelf). En dat acht ik keihard noodzaak: los van wat je van dat tweede punt persoonlijk vind, het is een véél grotere discussie die niet 'nu even' gewonnen kan worden. Dus trek die zaken alsjeblieft los. Ervaring met publicatie van custom projecten kan ook alleen maar helpen om die tweede discussie zinniger te voeren!
Ik denk dat je voor een groot deel het doel volledig mist, net als die Rikken in het artikel. Community of GUI e.d. vind ik totaal niet relevant. Ik verwacht niet dat er een community komt rond parkeermeter software of zoiets (but who knows...). Ik vind dat de primaire reden van publicatie gewoon openbare controle op kwaliteit en veiligheid is.

De overheid en ICT gaan niet samen, dat is duidelijk. Allemaal digibeet zijn ze daar. Het is dus aan geïnteresseerde programmeurs om te bepalen of de overheid kwaliteit krijgt en of wat gemaakt wordt veilig is. Die mogelijkheid is er nu gewoon niet. Ik vind dat dit gewoon onder WOB zou moeten vallen.
Een ander ding is dat met open code de overheid makkelijker naar een andere leverancier kan bij problemen.

Ik snap de issues met proprietary third party libs, maar die kunnen worden vermeden in veel gevallen en in andere gevallen zouden die onder een gebruiks licentie als binary kunnen worden gepubliceerd. Waar bij elke burger het recht krijgt op die lib te gebruiken om de applicatie te compileren en verder niets.

Samengevat de overheid is er voor en door de burger. De burger heeft dus recht op elk overheid betaald product. Of het nou papier of code is. Alles moet via open en gedocumenteerde api's. De overheid hoeft niet elk platform te ondersteunen, maar iedere burger moet technisch vanuit elk platform de overheid kunnen benaderen.
Een zeer relevant probleem. In het verleden en zelfs vandaag nog zijn er leuke oplossingen bedacht in de vorm van software. Maar die software is vrijwel nooit platform onafhankelijk. Een leuk voorbeeld nu is een coranapassport app.

Dat een oplossing niet platform onafhankelijk is forceert mensen om gebruik te maken van een dienst of product, in de meeste gevallen dus Android en/of iOS. Er moet als eerste altijd worden gestreven naar een platform onafhankelijke oplossing, en alleen wanneer dit echt niet mogelijk is zoals met de CoronaMelder app zou dat vervallen.

Daarnaast moet altijd standaard de broncode beschikbaar worden gesteld. "Public Money, Public Code" zoals de slogan klinkt van de FSFE. Dit zal ook het probleem deels oplossen van platform afhankelijkheid. Als de code kan worden bestudeerd omdat de broncode beschikbaar en vrij is dan kan de community ports of kloons maken naar platforms die daar behoefte aan hebben.

Ik ben zelf iemand die overal een Pinephone met GNU/Linux voor gebruikt, dus al die mooie apps daar kan ik geen gebruik van maken.

Gelukkig komt hier de laatste jaren beweging in, hopelijk bijt het volgende kabinet zich vast in dit onderwerp.

[Reactie gewijzigd door Omega op 17 maart 2021 06:42]

Let wel dat public money, public code vergaande implicaties heeft. Ook op de kosten van een stuk software dat de overheid ontwikkeld wil hebben. Dit betekend namelijk dat een bedrijf die de opdracht aanneemt niet zomaar (zoals dat nu geheid wel gebeurt) code opnieuw gebruikt die het eerder heeft geschreven.

Dit hergebruik doen ze om de kosten te drukken en dus eerder de bid van de overheid te winnen. Maar die vlieger gaat niet meer op als de code online gezet moet worden, daar zit namelijk IP in van het software huis die niet van de overheid is. Dan krijg je dus of het gezeur van een stukje open source en publiekelijk toegankelijk voor iedereen, met daarin afhankelijkheden van volledig gesloten code. Denk daarbij bijvoorbeeld aan audio en video codecs waarvoor gewoon licentie kosten betaald moeten worden en dus niet open source zijn. Of gespecialiseerde streaming oplossingen die eigendom zijn van de bouwer van de applicatie en niet van de overheid.

Dit kan natuurlijk allemaal volledig open source gebouwd moeten worden, maar dan kan de prijs zomaar een factor 10 omhoog gaan. Open source is niet goedkoper want alles moet opnieuw gebouwd worden of buurtje leen gespeeld worden bij andere open source projecten.

Daar komt in vele gevallen nog bij dat open source niet betekend dat je zelf de applicatie kunt bouwen. Denk daarbij bijvoorbeeld aan de app waar ze het nu over hebben in Europa waarin zichtbaar is of je gevaccineerd bent of een negatieve test hebt gehad. De encryptie sleutels zullen nooit openbaar zijn en je kunt het dus nooit ombouwen voor een ander OS. Dan is de encryptie en beveiliging direct nutteloos.
Let wel dat public money, public code vergaande implicaties heeft. Ook op de kosten van een stuk software dat de overheid ontwikkeld wil hebben. Dit betekend namelijk dat een bedrijf die de opdracht aanneemt niet zomaar (zoals dat nu geheid wel gebeurt) code opnieuw gebruikt die het eerder heeft geschreven.
Er is een gigantische hoeveelheid Vrije Software beschikbaar die groter is dan ieder bedrijf in de wereld. Alle code van Microsoft, Google en Apple samen is maar fractie van wat er beschikbaar is.
Als je daar geen gebruik van maakt maar alles zelf opnieuw wil doen, dán wordt het pas echt duur.
En natuurlijk is het zo dat je op korte termijn goedkoper uit bent als je een bestaande applicatie kan kopieren en aanpassen, maar op lange termijn blijf je dan steeds weer opnieuw betalen voor dezelfde functionaliteit.
Dit hergebruik doen ze om de kosten te drukken en dus eerder de bid van de overheid te winnen. Maar die vlieger gaat niet meer op als de code online gezet moet worden, daar zit namelijk IP in van het software huis die niet van de overheid is. Dan krijg je dus of het gezeur van een stukje open source en publiekelijk toegankelijk voor iedereen, met daarin afhankelijkheden van volledig gesloten code. Denk daarbij bijvoorbeeld aan audio en video codecs waarvoor gewoon licentie kosten betaald moeten worden en dus niet open source zijn. Of gespecialiseerde streaming oplossingen die eigendom zijn van de bouwer van de applicatie en niet van de overheid.
Dat klopt, maar dat hoef je maar één keer te doen. Daarna heb je een basis die bij alle volgende opdrachten gebruikt kan worden. En als zo'n softwarehuis z'n IP geheim wil houden dan staan er 100 andere klaar om het doen. Dat kost bij de eerste aanschaf natuurlijk meer dan een kant-en-klaar product van de plank nemen, maar het betaalt zich terug bij ieder volgend project dat je doet.
Dit kan natuurlijk allemaal volledig open source gebouwd moeten worden, maar dan kan de prijs zomaar een factor 10 omhoog gaan. Open source is niet goedkoper want alles moet opnieuw gebouwd worden of buurtje leen gespeeld worden bij andere open source projecten.
Bij closed source heb je alleen de keuze om alles opniew te bouwen. Lenen bij andere closed source projecten kan niet. Je kan die toegang misschien kopen, maar dat is ook niet goedkoop.
Daar komt in vele gevallen nog bij dat open source niet betekend dat je zelf de applicatie kunt bouwen.
Goede observatie, daarom hebben we Vrije Software nodig, niet alleen toegang tot de broncode.
Denk daarbij bijvoorbeeld aan de app waar ze het nu over hebben in Europa waarin zichtbaar is of je gevaccineerd bent of een negatieve test hebt gehad. De encryptie sleutels zullen nooit openbaar zijn en je kunt het dus nooit ombouwen voor een ander OS. Dan is de encryptie en beveiliging direct nutteloos.
Dat klopt niet, zo werkt het niet.
Toegang tot de sleutels zou echt helemaal los moeten staan van hoe die broncode geimplementeerd is. Als dat niet zo is dan heb je sowieso een fundamenteel beveiligingsprobleem. Iedere lolbroek die iets van hacking weet vist de encryptiesleutels zo uit de software. Dit is een schoolvoorbeeld van "security through obscurity". Ik ken ook geen moderne software die nog zo werkt. Alle moderne software weet dat je encryptiesleutels niet in de code opneemt maar in losse bestanden zet of (nog beter) in een aparte crypto-chip. Dat staat helemaal los van open of close source.
Het stuk van de encryptie slaat hem meer op het feit dat je dus niet in staat zou zijn een nieuwe versie te compileren voor een anders OS, wat juist een van de dingen is die de klager in deze rechtszaak wel wil kunnen.

Immers je kunt het wel compileren en de applicatie werkt ook wel. Echter kun je dus bijvoorbeeld in geval van een corona negatief bewijs app niet het negatief bewijst laten zien. Daarvoor moet je toch echt wel wat meer doen als enkel hercompileren, je zult dan ook een encryptie sleutel in de app moeten krijgen die de achterliggende server kent.
Daarvoor moet je toch echt wel wat meer doen als enkel hercompileren, je zult dan ook een encryptie sleutel in de app moeten krijgen die de achterliggende server kent.
Ik snap het niet. Hoe komt de closed source app dan aan die sleutel?
Volgens mij zitten er helemaal geen geheime encryptiesleutels in de app.
Volgens mij is de beveiliging er op gebaseerd dat het GGD je een unieke code geeft als je positief test, niet op gedeelde geheime sleutels.
Open source zou inhouden dat ook de code van de server open source zou moeten. Volgens de regels die dan zouden gelden voor de overheid. Die server is echter wel verantwoordelijk om te garanderen dat jij een correcte en geldige QR-code krijgt.

Idealiter met rollende encryptie om te voorkomen dat ze nagemaakt worden en dus waardeloos. Dus je kunt alles wel open source maken wat de overheid aan software laat maken, maar daar schiet je in genoeg gevallen niet mee op. Ja je zou een app kunnen compileren voor je smartphone, maar niet de bijbehorende server.

Daar komt nog eens bij dat een app als DigiD geheid client en server encryptie doet, en dit type app wil je niet her-compileerbaar maken. Wie garandeert dan dat er geen corrupte of incorrect beveiligde versies op de markt komen.

In het kort ja een hoop kun je open source maken zonder al te veel problemen als overheid. Maar er zijn genoeg apps waar ik in ieder geval zou stoppen met het gebruik ervan omdat de veiligheid in het geding komt als ze volledig open source gemaakt worden. Denk aan DigiD, Mijn Overheid of de berichtenbox.
Daar komt nog eens bij dat een app als DigiD geheid client en server encryptie doet, en dit type app wil je niet her-compileerbaar maken.
Nee. Zo werkt het niet.
Sleutels zijn geen onderdeel van de gecompileerde binary.
Een van de belangrijkste principes die we hebben in de beveiliging is

Ik beheer honderden applicaties die client-server encryptie doen en waarvan de broncode vrij beschikbaar is.

Niet her-compileerbaar bestaat niet. Alle executables kun je decompileren, aanpassen en hercompileren. Dat is fundamenteel. Het is zo handig als wanneer je de oorspronkelijke broncode hebt maar het kan altijd.
Maar er zijn genoeg apps waar ik in ieder geval zou stoppen met het gebruik ervan omdat de veiligheid in het geding komt als ze volledig open source gemaakt worden. Denk aan DigiD, Mijn Overheid of de berichtenbox.
Weet je dat iedere Android telefoon voor 90% uit open source bestaat, en dan juist en met name de gevoelige stukjes? Bij Apple is het wat minder, daar is het 80% ofzo.

[Reactie gewijzigd door CAPSLOCK2000 op 17 maart 2021 15:53]

Dit kan natuurlijk allemaal volledig open source gebouwd moeten worden, maar dan kan de prijs zomaar een factor 10 omhoog gaan. Open source is niet goedkoper want alles moet opnieuw gebouwd worden of buurtje leen gespeeld worden bij andere open source projecten.
Dat is natuurlijk niet helemaal waar. Zo kan het zijn dat een grote gemeente een stuk software laat bouwen die een kleine gemeente daarna gratis kan hergebruiken (of tenminste hergebruik van code). Zonder open source zou de maker elke gemeente min of meer dezelfde software kunnen verkopen voor de prijs van een compleet nieuwe applicatie.

Natuurlijk zal die grotere gemeente in eerste instantie duurder uit zijn, omdat de maker weet dat ie niet eindeloos dezelfde applicatie kan verkopen aan andere gemeentes, maar uiteindelijk is de gemeenschap beter af. Alleen gebeurt dat nu niet omdat niemand die eerste gemeente wil zijn die meer betaalt om de code open source te maken.
Daarvoor zou je gemeentelijke opensource projecten ook via de Vereniging van Nederlandse Gemeenten (VNG) kunnen organiseren.
Daarvoor zou je gemeentelijke opensource projecten ook via de Vereniging van Nederlandse Gemeenten (VNG) kunnen organiseren.
Dat kan. Maar de VNG kan gemeentes niet dwingen om die ene gemeente te zijn die meer betaalt zodat de rest goedkoper uit is. Je hebt eerst wetgeving nodig die gemeentes dwingt om hun maatwerk software open source te maken.
Klopt, maar je zou via de VNG een gentleman agreement kunnen maken dat als een gemeente een opensource project start en een andere gemeente daar (later) ook gebruik van maakt dat je dan een bijdrage doet (bijv. kosten delen naar rato van inwoner aantal).
Helemaal mee eens, maar wat betreft de Coronamelder app: dat kan ook best zonder google play services, zie Duitsland.
Dit moet je toch een beetje toelichten. Op https://github.com/corona-warn-app zie ik dat de app toch gewoon gebruik maakt van de exposure notification API. Of bedoel je dat er mensen zijn die een onofficiële experimentele fork hebben gemaakt? https://codeberg.org/coro...acing-germany/cwa-android
Doel inderdaad op https://www.security.nl/posting/680905/
Ik snap dat de community in Duitsland wellicht wat groter is, en dat dat de reden is dat dergelijke apps wel beschikbaar zijn. Maar in het artikel hierboven wordt de Coronamelder app als 'het goede voorbeeld' erbij gehaald, en dat staat me tegen.
Want hoewel de source dus open is, doet de app gewoon niets zonder Google play services(wat imho het schoolvoorbeeld is van een propriety closed source black box waar je geen flauw benul hebt wat ie allemaal doet en/of bij een update morgen doet).
Nu hebben we een app die niet alleen niet.platformonafhankelijk is, maar zelfs 'schoon' Android niet genoeg vind.
Dat is precies het probleem. Ook open-source lost de afhankelijkheid van Google en Apple niet op zolang bijvoorbeeld nog gebruik wordt gemaakt van Google Play Services.
Dit is voor mij nog belangrijker (data, privacy) dan of software wel of niet open source is gemaakt.

[Reactie gewijzigd door Aphelion op 17 maart 2021 09:26]

Dat is simpel weg niet waar. Ook de Duitse Corona Warn App maakt gewoon gebruik van de Exposure API van Google wat onderdeel is van de Google Play Services.

Bron: https://www.coronawarn.app/en/#howto
Neem even de moeite om mijn post te lezen en link te bezoeken. :z
Ik vraag me vaak af waarom alles een app moet zijn. Prima dat die er is, maar een fatsoenlijke website die op alles werkt zorgt dat iedereen de informatie kan gebruiken.
Zie https://debatdirect.tweedekamer.nl/. DebatDirect staat weliswaar in de app-stores, maar het is duidelijk een webapp. Dat is (op Android althans, weet niet hoe het op iOS zit) wel duidelijk te merken.

Voor deze zaak is dat overigens niet relevant: of het nu gaat om een Windows-, Android-, iOS- of generieke web-app: het gaat erom dat de broncode niet open source (FOSS) ter beschikking wordt gesteld.

En of je dat nou een goed idee vindt of niet is ook maar zelfs in beperkte mate relevant in deze zaak omdat de Tweede Kamer zich al wel uitgesproken heeft vóór het publiceren van dit soort code, maar het toch niet doet.
Er gebeurt op dit gebied wel meer bij de overheid. Misschien goed om een keer aandacht te besteden aan het open source ecosysteem dat gemeenten als een groeiende community ontwikkelen.
https://www.commonground.nl/
Common Ground draait niet om open source, maar om gestandaardiseerde informatie opslag en communicatie, zodat applicaties eenvoudiger kunnen worden gewisseld, migraties worden vereenvoudigd en zaken als vernietiging over de keten worden ondersteund. Ook wordt het principe van eenmalige opslag en meervoudig gebruik toegepast.
De applicaties zelf hoeven echter niet open source te zijn.
Open source is toch echt een van de realisatie principes van Common Ground, maar het draait inderdaad om meer dan alleen dat.

Dat gezegd hebbende is het niet zo dat (bestaande) closed source perse wordt uitgesloten maar de producten zullen wel moeten meebewegen met de andere principes.
Wat het trieste aan deze zaak is, is dat er moeten zaken bij de raad van state gevoerd worden, overheid moet op alles reageren, allemaal zinloze tijd en verspilling van geld, waarom ligt de overheid / 2de kamer hierin dwars.
Alleen voor android en ios daarmee ondersteund de overheid dus een duopolie die een ander overheidsorgaan weer onderzoekt op marktmisbruik. Snapt iemand de logica van onze overheid nog ?
Deed me ook direct denken aan de 'Public Money, Public Code' campagne van Free Software Foundation Europe

https://fsfe.org/activities/publiccode/publiccode.en.html
Kijk nou is, zo een goeie organisatie rond open source bij de overheid.

Belgie loopt serieus achter. echt serieus.
Hulde aan deze man. De hele maatschappij is binnen tien in de klauwen van Alphabet en Apple gegleden, en het is allemaal zo makkelijk en zo gratis en zo weidverbreid dat je er niet omheen kunt. Het is inderdaad niet normaal dat je als burger een Android-telefoon (of een peperdure apple) moet hebben om overheidsinfo te raadplegen.

[Reactie gewijzigd door Znorkus op 17 maart 2021 08:07]

Het gevolg is nu dat de rest van de burgers extra moet betalen om een dure rechtszaak te bekostigen en dat in de toekomst bij aanbestedingen mogelijk meer betaald moet worden om source code bij een project opgeleverd te krijgen.

Ik ben dan meer voor de web-based oplossing zoals in andere reacties voorgesteld. Het moet ook allemaal betaalbaar blijven, mooi dat deze man principes heeft, maar waarom moeten ze de belastingbetaler nu weer zo veel geld kosten?
Dus als iets geld kost dan speelt het recht op openbaarheid van kamer debatten niet meer mee? Want het beveiligen van de politici die deelnemen aan die kamer debatten kost ook geld. Dus dan moeten we de gehele openbaarheid van alle debatten maar volledig afschaffen. Want het kost geld. Toch?

Democratie en openbaar bestuur kost geld. Afschaffen.

Alles kost geld. Alles afschaffen. Het mag geen geld kosten.

Wat Jos hier probeert te bekomen is dat iedereen in de toekomst software kan bouwen om die kamer debatten te kunnen volgen. Dat dus niet enkel dure overheidscontractanten dat kunnen. En dat iedereen, alle Nederlandse burgers, ongeacht hun status, bezit, rijkdom (men moet dus geen dure iPhone of whatever hebben) en zo verder kunnen deelnemen via zulke software.

Of mogen enkel mensen die veel geld hebben dat ze dan ook nog eens moeten uitgeven aan dure systemen (zoals Apple's telefoons) die op allerlei manieren bovendien hun rechten beknotten, deelnemen aan zulke debatten? Want dan moet je het zo ook rechtuit zeggen he,
Je legt me woorden in de mond. Ik zeg nergens dat niets geld mag kosten.

Ik zeg wel dat we het met elkaar moeten ophoesten en dat je wel kritisch mag zijn waar het geld aan uitgegeven wordt. Open systemen: helemaal mooi! Een ton extra uitgeven om één obscuur systeem te ondersteunen: een stuk minder mooi.
Akkoord. Maar wat dan wel en wat niet zou dus dan best bv. een politieke beslissing zijn. Laten we hopen dat de rechtzaak straks voor een politiek debat hierover in de kamer zal zorgen.
Het gevolg is nu dat de rest van de burgers extra moet betalen om een dure rechtszaak te bekostigen en dat in de toekomst bij aanbestedingen mogelijk meer betaald moet worden om source code bij een project opgeleverd te krijgen.
Heet dat niet kort door de bocht, democratie?
Dat of bij nieuwe ontwikkelingen baseert men zich vanaf begin op open standaarden en kan het goedkoper omdat veel software al bestaat.

Debat direct is een app om videostreams mee af te spelen. Als de overheid had besloten om in een open formaat te streamen had men niet eens een app hoeven laten ontwikkelen, of had men ankele een bestaande app kunnen nemen en de UI aanpassen.

En dat is eigenlijk misschien nog wel de belangrijkere stap: dat de overheid alleen nog maar open standaarden gebruikt; bestaande standaarden, niet zelf laten ontwikkelen dan publiceren en hopen dat iemand er mee aan de slag gaat.
Ik ben dan meer voor de web-based oplossing zoals in andere reacties voorgesteld. Het moet ook allemaal betaalbaar blijven, mooi dat deze man principes heeft, maar waarom moeten ze de belastingbetaler nu weer zo veel geld kosten?
De vraag is eerder waarom de overheid kiest voor een oplossing die een deel van de burgers uitsluit omdat ze geen generiek platform gebruiken. Al die app zever mogen ze stoppen want vaak is dat niet meer dan een UI om data van het web te halen. Kan even goed via een website en dan is dat ineens voor iedereen beschikbaar. Ook heb ik vaak de functionaliteit op pc/laptop omdat ik daar door mijn werk toch achter zit, ipv van elke keer die telefoon te moeten opgraven omdat het weer eens in een domme app zit.
dat in de toekomst bij aanbestedingen mogelijk meer betaald moet worden om source code bij een project opgeleverd te krijgen
Dat is onzin, de bedragen die de overheid uitgeeft aan mislukte IT-projecten zijn belachelijk en totaal niet in verhouding met de daadwerkelijke kosten van ontwerp en ontwikkeling. De broncode meeleveren past heel makkelijk in de marge die de leveranciers daar nu op hebben, als de overheid dat gewoon als voorwaarde stelt voor alle projecten dan gaan die leveranciers daar gewoon in mee want het is goud geld verdienen.
De rechtszaak was ook niet nodig geweest als de overheid direct in zijn redenatie was meegegaan, daar kun je 2 kanten mee op. De vraag is nu wie de rechter gelijk geeft, dat zullen we zien.
Het moet niet gekker worden. Er is een App ontwikkeld voor de meest gangbare mobiele platformen en is daarbij een mooi gebaar vanuit de overheid. Reden dat ik zeg mooi gebaar is omdat er in beginsel geen noodzaak is voor de App. Een debat volgen kan namelijk op verschillende manieren. Bijvoorbeeld op elk ander platform, door gebruik te maken van een browser. Ben wel benieuwd wat deze “principes”/“aandacht” alles doorgerekend gekost heeft.
Wat dit betreft doet de Engelse overheid het geweldig. Die hebben een github project waar een groot deel van de diensten in code vorm, inclusief de deployment, vandaan te halen zijn.

Edit: https://github.com/alphagov

[Reactie gewijzigd door terror538 op 17 maart 2021 06:54]

Is het niet Broncode ipv Broncodes? Is code niet gewoon meervoud?
Hulde voor deze man zeg! Ik ben zelf een ontwikkelaar voor postmarketOS, een Linux distributie gericht op telefoons zoals de PinePhone en de Librem 5, en ik kan dit soort apps dus ook niet op mijn favoriete platform gebruiken. Wat zou het toch mooi zijn als er een native app met Plasma Mobile achtige UI hiervoor was, en voor alle andere overheidsapplicaties.

Ik ben een groot voorstander van https://publiccode.eu, het zou mooi zijn als de overheid daar eens mee gaat werken.
Iedereen die de zitting over een uurtje online wil bijwonen:
Meer dan een jaar na het indienen van het beroepschrift vind de zitting plaats. De zitting vind op 17 maart 2021 om 11.30 plaats bij de Raad van State, Kneuterdijk 22, Den Haag

Meld je aan om de zitting (online) bij te wonen.
Voorbeeld E-mail:
Subject: bijwonen 202001728/1/A3 op 17 maart 2021

Beste Raad van State,

Ik wil me aanmelden om de beroepszitting 202001728/1/A3 Van den Oever vs Tweede Kamer op 17 maart 2021 om 11.30 bij te wonen.
@Jos van den Oever: prachtig. Super.

[Reactie gewijzigd door freaxje op 17 maart 2021 10:28]

Waarom dan Github noemen?
Git is het protocol dat ook in eigen beheer met openbron schrijfgoed geserveerd kan worden. Lijkt me een stuk betrouwbaarder en soevereiner dan een US afhankelijkheid.

[Reactie gewijzigd door Mushroomician op 17 maart 2021 12:27]

Doet me denken aan wat je vroeger wel eens op tv zag. Dan noemde iemand per ongeluk een biermerk en dan moesten er ook 2 andere biermerken genoemd worden.

Dit is een betere oplossing.

Nu benoem je git, wat iedereen mag en kan gebruiken en hoef je vervolgens github, gitlab of een ander bedrijf niet te benoemen.
Een echt opensourceproject kost echter tijd. Je moet daar een community omheen bouwen.
Ik weet niet of dat de definitie is van een "echt open source project" want er is genoeg open source waarbij je op uitnodiging van de leverancier op een locatie van hun kan grasduinen in de code maar het niet mag kopiëren of ergens online kan zien. Precies om de reden dat de leverancier niet op inmenging van buiten af zit te wachten en er geen intellectueel eigendom weg gegeven word.
Er zijn eigenlijk twee definities:

The Open Source Definition
https://opensource.org/osd

The Four Freedoms
https://fsfe.org/freesoftware/freesoftware.en.html

Daarbij is er nog een vervolg discussie:
Wel of niet tolerant voor intolerantie?

Sommige licenties vragen jou niet om jouw eindgebruikers evenveel te respecteren. Deze licenties stellen je vrij om te doen met de code wat je wilt, ook als dat hele vrijheidsbeperkende dingen zijn. De tweede groep licenties stellen dat de vrijheid die jij als ontwikkelaar hebt, ook voor de eindgebruiker moet gelden. Dit is de kern van de discussie van MIT/BSD vs GPL. Als kleine ontwikkelaar en burger sta ik achter de GPL, maar veel multinationals verkiezen MIT, BSD en dergelijke.
Ik weet niet of dat de definitie is van een "echt open source project" want er is genoeg open source waarbij je op uitnodiging van de leverancier op een locatie van hun kan grasduinen in de code maar het niet mag kopiëren of ergens online kan zien. Precies om de reden dat de leverancier niet op inmenging van buiten af zit te wachten en er geen intellectueel eigendom weg gegeven word.
Daarom spreek ik altijd over Vrije Software. Ik snap dat Open Source lekker babbelt en zakelijker klinkt, maar het geeft leveranciers te veel kans om te werken volgens de letter en niet de geest van de beschikbaarheid van broncode.
Daar worden hele oorlogen over gevoerd. Sommigen vinden dat het pas “opensource” is als het en publiek is en met een licentie waardoor je er alles mee mag ala BSD-3 bijvoorbeeld. Gaat nergens over natuurlijk, opensource software met proprietary license is even goed opensource.
Daar worden hele oorlogen over gevoerd. Sommigen vinden dat het pas “opensource” is als het en publiek is en met een licentie waardoor je er alles mee mag ala BSD-3 bijvoorbeeld.
Daarom heb ik het altijd over "Free Software" om duidelijk te maken dat ik het over de definites van Richard Stallman heb.
Gaat nergens over natuurlijk, opensource software met proprietary license is even goed opensource.
Als het natuurlijk was dan werden er geen oorlogen over gevoerd.

Maar je legt de vinger wel precies op de zere plek die ook in dit artikel voorkomt.
Alleen de kale broncode is niet genoeg, je hebt ook de software en informatie er om heen nodig.
Daarom wordt er zo veel gebakkeleid over de termen "Free Software" en "Open Source".
Het komt allemaal neer op de vraag of je "open source" ziet als de simpele mogelijkheid om de broncode te bekijken, of de filosofie dat software inzichtelijke en aanpasbaar moet zijn.

Als je gelooft dat software die met belastinggeld wordt ontwikkelt beschikbaar moet zijn voor alle Nederlanders dan heeft alleen de tweede intepretatie zin, namelijk dat Nederlanders ook iets moeten kunnen met de software die ze gekocht hebben.

[Reactie gewijzigd door CAPSLOCK2000 op 17 maart 2021 13:28]

Daar worden hele oorlogen over gevoerd. Sommigen vinden dat het pas “opensource” is als het en publiek is en met een licentie waardoor je er alles mee mag ala BSD-3 bijvoorbeeld. Gaat nergens over natuurlijk, opensource software met proprietary license is even goed opensource.
Dus Windows is open source omdat Microsoft de code onder voorwaarden beschikbaar stelt voor overheden die een audit willen doen?

Wat mij betreft is het pas open source met een licentie die distributie en hergebruik van de code toestaat. Anders kun je alles wel open source noemen omdat de maker wel eens een derde partij zijn code laat bekijken.
Inderdaad, en dat is iets waar de man in kwestie zo te lezen al tevreden mee zou zijn aangezien hij het wil "reverse engineeren"
Nee, hij is niet tevreden omdat hij de code niet mag hergebruiken (herdistributeren). Hij mag dus op basis van deze code, geen app schrijven voor Firefox OS..

Dat is de kern van zijn betoog, dat het broncode al grotendeels openbaar is (o.a. via source maps), maar dat de gekozen creative commons licentie, hergebruik van de code niet toestaat..
Neen, hij wil het recht om het te kunnen aanpassen. Momenteel moet hij reverse engineeren en kan hij het niet echt legaal gebruiken. Maar hij wil als Nederlands burger (die dus mee betaald heeft via belastingen) het recht om het legaal te kunnen en mogen gebruiken.

Op dit item kan niet meer gereageerd worden.

Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee