
112-meldingen uit je eigen straat, op je telefoon
Een iOS-app op P2000, de geocoder van de overheid en open vliegdata, met pushmeldingen alleen voor plekken die jij kiest.
- Open data
- Interface ontwerp
- Platform
- Jaar
Watskeburt is een iOS-app voor wie wil weten wat er in de eigen straat gebeurt. Een melding van brandweer, ambulance of traumahelikopter staat als puntje op een kaart, in een gewone zin. Een pushmelding krijg je alleen voor plekken die je zelf kiest. Het is een eigen experiment, waarin wij vier open bronnen aan elkaar knoopten. De app werkt, en staat toch niet in de App Store. De politie zit niet in de data, en een afloop komt nooit.
- SwiftUI
- iOS 17
- MapKit
- Firebase Firestore
- Cloud Functions
- PDOK Locatieserver
- ADS-B
In het kort
- 18
- 4
- 9
- 55
- 65
Wat er lag
Er rijdt iets langs met zwaailicht, of er hangt een helikopter boven je wijk die maar niet weggaat. Wat is er gebeurd? Zeg het snel en je hebt de naam van de app. Het antwoord ligt voor een groot deel gewoon op straat. Brandweer, ambulance en traumahelikopter worden gealarmeerd via P2000, een open netwerk dat iedereen mag ontvangen. Alleen leest elk bericht als een telegram uit 1994: PRIO 1 TS WONINGBRAND 2514AK Veenkade 12 Den Haag. Dat pieperjargon moest een zin worden op een kaart van je buurt, met alleen openbare bronnen en zonder één euro aan data. En het mocht geen nieuwssite met sirenes worden.
Drie details die het verschil maken



Probeer het zelf
Zo komt een melding binnen, en zo leest de app hem voor. Kies een voorbeeld of typ er zelf een.
Van pieperjargon naar een zin over je straat
Vier open bronnen, nul euro aan data
Hangt er een helikopter boven Belgisch Park, dan staat er in de app: politiehelikopter boven Belgisch Park, mogelijk in verband met een melding op de Strandweg. Daar zijn vier open bronnen voor nodig, die niets van elkaar weten.
Elke vijf minuten haalt de backend achttien RSS-feeds op. Dertien dragen P2000-alarmeringen, vijf landelijk en acht regionaal, zodat Zeeland en Drenthe niet wegvallen tegen de Randstad. De andere vijf komen van 112-redacties die zelf al fatsoenlijke koppen schrijven. De PDOK Locatieserver, de gratis geocoder van de overheid, maakt van een straatnaam een coördinaat en geeft de officiële BAG-schrijfwijze terug.
De vierde bron is ADS-B, de open vliegdata van elk vliegtuig ter wereld. Daar zitten ook de negen Nederlandse politiehelikopters in, elk met een eigen hexcode. Elke twee minuten haalt de backend hun posities op, zoekt via PDOK de buurt erbij en kijkt of er binnen vier kilometer een verse melding ligt. Alles komt in Firestore, en via een livekoppeling verschijnt een nieuwe melding vanzelf op je telefoon.
Van PRIO 1 TS WONINGBRAND naar een zin
Een P2000-bericht is geen zin. Het is een prioriteitscode, een voertuigafkorting, een capcode, soms een postcode en ergens daartussen een straatnaam. Daar moet een kop van komen die je in één blik leest, ook als je niet weet dat TS een tankautospuit is.
Er zit geen taalmodel in. Het is een stapel regels die je kunt nalezen en stap voor stap beter maakt. Dertien herkennen de hulpdienst, 55 vertalen incidenttypes van WONINGBRAND tot BEKNELLING en 65 vertalen stadsafkortingen: SGRAVH is Den Haag, KPLLND is Krimpen aan den IJssel. Snelwegen, kruisingen en hectometerpaaltjes krijgen een eigen behandeling. Straatnamen krijgen het juiste lidwoord, want “op de Grote Markt” leest en “op Grote Markt” niet. Zo'n regel voelt onbenullig tot je hem toevoegt en de hele lijst ineens klinkt alsof er een mens achter zit.
Geocoderen gaat in vijf pogingen, van precies naar grof: postcode plus straat, postcode plus stad, de straat binnen de gevonden stad, en zo verder. Daarna vervangt de officiële BAG-naam wat de parser ervan maakte. Behalve als de geocoder ineens een heel andere stad noemt, want dan heeft een stadsnaam in de straatnaam hem misleid. De Amsterdam Gouwstraat ligt gewoon in Terneuzen.

Drie brandweereenheden, één grote brand
Drie brandweereenheden op één adres zijn één grote brand. Eén alarmering is één voertuig, en dat is bijna nooit het hele verhaal. Daarom kijkt een tweede proces elke vijf minuten welke meldingen bij elkaar horen: binnen 400 meter en binnen een half uur.
Die meldingen vullen elkaar aan. Weet de ene “aanrijding met letsel” en de andere alleen “hulpverlening”, dan krijgen ze allebei de meest specifieke omschrijving. Negen regels bepalen wat er boven komt te staan, van MEERDERE EENHEDEN tot ERNSTIG. Drie regels kijken naar het moment, want een aanrijding in de spits leest anders dan een melding midden in de nacht.
Onder de kop blijft de oorspronkelijke melding staan, met de ruwe pagertekst erbij. Zo zie je zelf waar de conclusie vandaan komt. Dat leek ons het minste wat je kunt doen als een computer samenvat wat er in iemands straat gebeurt.

Na drie kwartier: waarschijnlijk afgelopen
In de Verenigde Staten doet Citizen hetzelfde met 911-meldingen, met een melding bij elk incident in de buurt en livevideo vanaf de stoep. Er is dus publiek voor. Wij wilden de nieuwsgierigheid bedienen en de spanning laag houden. Dat werd het meeste ontwerpwerk.
Meldingen komen alleen binnen voor plekken die je zelf opslaat: thuis, je werk, het adres van je ouders. Elke plek heeft een eigen straal en eigen vinkjes per hulpdienst. Een landelijke stroom zit er niet in. De koppen beschrijven wat er is, en na drie kwartier zet de app er zelf “waarschijnlijk afgelopen” onder.
Foto's en video's van omstanders zaten in de eerste versie en gingen er weer uit. Dat vraagt moderatie, en die regel je niet even in een experiment. Op de kaart staat een puntje met een letter, zonder rode vlekken of een teller die oploopt. Tik erop en je leest wat er gebeurde, met de veiligheidsregio erbij en hoe druk het die dag in je stad was.

Wat we eruit hebben geleerd
- 01
De grootste vondst zat waar we hem niet zochten. P2000 alarmeert vooral de brandweer, de ambulancedienst en de traumahelikopter. De politie werkt over C2000, en dat netwerk is versleuteld. De melding die je het meest zoekt, de blauwe zwaailichten in je eigen straat, zit er dus niet in. Betere code lost dat niet op. Het netwerk is zo ontworpen, en als je erover nadenkt terecht.
- 02
Daarom voelde de helikoptertruc zo goed. Het is zo'n beetje de enige manier waarop de politie zichzelf publiek uitzendt. Ook dan weet je alleen dát er iets is, en nog niet wat.
- 03
De tweede vondst: er komt nooit een afloop. Een alarmering is een begin. Of het een pan op het vuur was of een uitgebrand pand, en of iemand het gehaald heeft, staat nergens in de data. En dat is nu net de vraag: wat is er gebeurd? Voor een volgende versie ligt daar de mooiste opgave: één bron aan de achterkant die de zin afmaakt.
- 04
Daarom staat Watskeburt hier als experiment, en niet in de App Store. Kan het? Ja: de bronnen zijn er, de parser werkt en de pushmeldingen komen aan. Is het af? Nee, en dat mag bij een experiment.
Letters en kleuren
- Alles
- SF Pro
- #ffcc00het accent van de app: de speldjes en de knop, het systeemgeel van iOS
- #000000de kaart en de nachtstand
- #fffffftekst en kaarten
- #8e8e93tweede tekst, uit het systeem
- Systeemkleuren en de systeemletter. Licht en donker volgen de telefoon, en op het vergrendelscherm is een melding gewoon een melding.
- De kaart blijft rustig: een puntje met een letter, zonder rode vlekken en zonder teller.
- De waarden komen uit de SwiftUI-code en de reconstructies van de schermen, 7 september 2026.
Onder de motorkap
- App
- SwiftUI
- iOS 17
- MapKit
- 19 bestanden
- 3.700 regels
- Backend
- Firebase Firestore
- 6 Cloud Functions
- europe-west1
- 2.300 regels JavaScript
- Bronnen
- 13 P2000-feeds
- 5 feeds van 112-redacties
- PDOK Locatieserver
- ADS-B
- Nul euro aan data
- Vertaling
- 13 regels hulpdienst
- 55 incidenttypes
- 65 stadsafkortingen
- Geen taalmodel
Voor wie verder wil lezen
Hoe het precies werkt
De app draait op iOS 17 en SwiftUI, met MapKit voor de kaart: negentien bestanden en zo'n 3.700 regels.
De app draait op iOS 17 en SwiftUI, met MapKit voor de kaart: negentien bestanden en zo'n 3.700 regels. De backend draait op Firebase in europe-west1, met zes Cloud Functions en 2.300 regels JavaScript.
Elke vijf minuten haalt de backend de feeds op en verrijkt hij de meldingen. Elke twee minuten haalt hij de helikopters op, en elke zes uur verdwijnt alles wat ouder is dan 48 uur. De telefoon luistert live mee op de meldingen van de laatste 25 uur, dus een nieuwe staat er meteen op.
De hele stapel is in ruim twee weken gebouwd, in maart 2026, boven op een webprototype uit april 2023. Dat was een donkere kaart met één RSS-feed uit Amsterdam-Amstelland en gele speldjes, en het had drie jaar stilgelegen. Wil je zelf iets in deze hoek proberen? Alle bronnen liggen open en gratis klaar, en dat is misschien het leukste nieuws van dit experiment.
Waarom staat Watskeburt niet in de App Store?
Omdat de politie niet in de data zit en er nooit een afloop komt. De bronnen zijn er, de parser werkt en de pushmeldingen komen aan. Af is de app niet, en dat mag bij een experiment.
Welke meldingen zie je in Watskeburt?
Van de brandweer, de ambulance en de traumahelikopter, via P2000. De politie werkt over C2000, en dat netwerk is versleuteld.
Hoe komt de politiehelikopter in Watskeburt?
Via ADS-B, de open vliegdata. Elke twee minuten haalt de backend de positie van negen politiehelikopters op en zoekt hij een verse melding binnen vier kilometer.
Krijg ik in Watskeburt meldingen van het hele land?
Nee. Alleen voor plekken die je zelf opslaat, elk met een eigen straal en eigen vinkjes per hulpdienst. Met een landelijke stroom zou Watskeburt een nieuwssite met sirenes worden.
Wat kostte de data voor Watskeburt?
Nul euro. Alle vier de bronnen zijn open: P2000, de 112-redacties, de PDOK Locatieserver en ADS-B.
