Waarom 'Developer Experience' cruciaal is voor de omgevingswet

In Nederland wordt momenteel geschiedenis geschreven. De vorig jaar aangenomen omgevingswet, die met 349 wetsartikelen de vervanger moet worden van 26 huidige wetten met meer dan 4.500 wetsartikelen en daarmee een van de grootste wetswijzigingen sinds de invoering van de Grondwet is, zorgt voor een aardverschuiving binnen het IT landschap van de BV Nederland. Vanaf 2018 moeten alle gemeenten, provincies, waterschappen en rijksdiensten dusdanig georganiseerd zijn dat met één druk op de knop alle belangrijke omgevingszaken, zoals het aanvragen van een vergunning, geregeld kunnen worden.

Om dit te realiseren zullen alle gedecentraliseerde informatiesystemen naadloos op elkaar aangesloten moeten worden, wat naast politieke obstakels ook een hoop technische uitdagingen met zich meebrengt. Zo is informatie niet overal op dezelfde manier gestructureerd, verschilt de update frequentie per bron nogal eens en is er geen standaard voor de manier waarop de data ontsloten wordt. Hoewel deze issues overeenkomen met de nice to haves die onderwerp van gesprek zijn binnen de Open Data beweging, is het voor de doelstellingen van de omgevingswet essentieel om hier antwoorden op te vinden.

#Spatial Data on the Web

De zoektocht naar deze antwoorden is inmiddels in volle gang. Vanuit verschillende hoeken binnen de overheid ontstaan er initiatieven die moeten bijdragen aan het vinden van oplossingen en het versnellen van innovatie- en ontwikkeltrajecten om op tijd klaar te zijn met de hervormingen die nodig zijn om genoeg handjes te kunnen vinden om deze zware klus te kunnen klaren. Want terwijl 2018 steeds dichterbij komt, worden gespecialiseerde ontwikkelaars steeds schaarser.

Met Apiwise zijn wij betrokken bij het #Geo4Web testbed van Geonovum en bij de ontwikkeling van een geodata-platform voor het Kadaster. Voor het #Geo4Web onderzoek 'spatial data on the web' richten wij ons met name op het ontdekken van best practices om geografische informatie te ontsluiten, zodat machines de data kunnen indexeren en interpreteren. Want waarom zou je zelf een algoritme schrijven dat antwoord geeft op de menselijke vraag "Waar binnen 5 kilometer van de overkant van mijn huidige locatie mag ik een brouwerij beginnen?", terwijl (zoek)machines zoals Google daar al heel goed in zijn?

Ondanks verwoede pogingen om de geodata te laten indexeren en interpreteren middels structured data markup en andere ontsluitingsvormen, lijken de grote zoekmachines als Google en Bing vooralsnog niet veel interesse te hebben in gigabytes aan geografische informatie. Ook niet als het geserveerd wordt op een presenteerblaadje. Moeten we dan toch maar zelf die algoritmes gaan schrijven? Wat ons betreft niet.

#Oplosbaarheid

Natuurlijk gaan we geen tijd, geld en moeite verspillen om het wiel opnieuw uit te vinden. Het is namelijk een illusie om te denken dat een handjevol ontwikkelaars die betrokken zijn bij de Nederlandse overheid dit probleem zomaar even gaan tackelen voor 2018. Onze conclusie is dan ook dat dit groepje zich niet moet concentreren op het oplossen van het probleem, maar op de oplosbaarheid van het probleem. Door data in zoveel mogelijk vormen zowel machine-friendly als developer-friendly te serveren bereik je namelijk een gigantische groep clients die mogelijk kunnen helpen bij het daadwerkelijk oplossen van het probleem.

Zo zou een machine (zoekmachines, knowledge graphs, supercomputers en digital assistants zoals Apple's Siri of Google Now) de informatie kunnen vergaren, zou een willeurige citizen-developer zomaar een killer-app kunnen uitvinden en opent het deuren naar partijen die anders niet eens in beeld waren gekomen. Er zijn bijvoorbeeld veel minder software ontwikkelaars gespecialiseerd in geostandaarden dan in webstandaarden, wat ervoor zorgt dat bij marktwerking het aanbod kleiner is dan wanneer data ook via webstandaarden geserveerd zou worden.

#Developer Experience

Om een van de grootste IT uitdagingen uit onze vaderlandse geschiedenis ooit aan te kunnen vliegen hebben we zoveel mogelijk resources nodig, mens én machine. Door deze Large Set of Unknown Developers en Large Set of Unknown Devices zo goed mogelijk te bedienen is de kans op succes het grootst. Om goede developers aan boord te krijgen, die over het algemeen net zo eigenwijs zijn als schaars, is het cruciaal om voldoende aandacht te besteden aan de zogenaamde Developer Experience (DX):

"DX: Facilitating better user experiences by making app development easier for developers." - UX Magazine

#Time To First Successful Call

Alles valt of staat met de Time To First Successful Call, de tijd die een ontwikkelaar nodig heeft om de eerste keer met een aangeboden dienst of dataset aan de slag te kunnen. Ter illustratie: een XML SOAP service met een PDF handleiding van 150 pagina's zorgt hoogstwaarschijnlijk voor een hogere TTFSC dan een RESTful JSON API die out-of-the-box werkt met de meest gangbare client libraries uit de ontwikkelaars community. Hoe lager de TTFSC, hoe hoger de bijdrage van ontwikkelaars. Vast blijven houden aan traditionele en domeinspecifieke standaarden zorgt voor een lagere DX en dus een hogere TTFSC. Daar is niets mis mee, maar voor extra resources zal dan wel uit een kleinere vijver gevist moeten worden.

Het aanbieden van een goede DX is een uitdaging op zich, en aangezien we in het kader van de omgevingswet ook nog te maken hebben met meerdere domeinen is het van belang om te beginnen met het wegnemen van dit onderscheid. Data bestaat immers altijd uit ééntjes en nulletjes, of de data nu iets zegt over een locatie, een persoon of een auto. Dit maakt een wezenlijk verschil voor de interpretatie van de data, maar technisch gezien maakt het helemaal niks uit. Vanuit het geo-domein werd, in het kader van #Geo4Web, onlangs een interview met ons hierover gepubliceerd in GIS Magazine: "Apiwise richt zich op toegankelijkheid Open Data".

#Internationaal

Omdat ontwikkelaars verspreid zijn over de hele wereld is het tenslotte van groot belang om verder te kijken dan alleen naar Nederland. Daarom hebben wij de hulp van hét blog op het gebied van API ontwikkeling ingeroepen en mogen wij daar een Engelstalige serie blogposts publiceren over de huidige ontwikkelingen in Nederland. Onze eerste bijdrage staat reeds online: "How APIs Will Address the Challenges of Holland's Biggest IT Project Ever".

De volgende bijdrage volgt binnenkort en wordt tevens vergezeld door onze grote Open Data Developer Experience Survey. Want hoewel wij onszelf experts noemen op het gebied van Developer Experience en wij organisaties hierin graag van advies willen voorzien kan het natuurlijk nooit kwaad om het ook daadwerkelijk gewoon eens te vragen. Wordt vervolgd!