Lopende projecten

Voor het dans- en muziekfestival CaDansa bouw ik een website met een CMS en een registratiesysteem voor de deelnemers (CakePHP/MySQL). De “voorkant” maak ik op basis van een Photoshop ontwerp (HTML/CSS).

Afgeronde projecten

Voor Nazca IT Solutions heb ik een web-based kaartviewer gebouwd en geïntegreerd binnen hun bodeminformatiesysteem Nazca Bodem (OpenLayers, Javascript, ASP.NET/C#).

Ik heb als ontwikkelaar/architect en aandeelhouder meegewerkt aan QMaps, een platform voor online kaarten waarop apps gebouwd kunnen worden voor het weergeven van eigen gegevens (Javascript, OpenLayers, HTML5, PostgreSQL/PostGIS, CartoDB).

In opdracht van de Gemeente Rotterdam heb ik gewerkt aan het uitbreiden en verbeteren van hun gemeentebrede web-based GIS-systeem (Javascript, OpenLayers, ExtJS, C#, ASP.NET MVC).

Voor Organic Vectory heb ik een server opgezet met alle OpenStreetMap-data van Nederland en de bijbehorende software (Ubuntu Server, PostgreSQL/PostGIS, Ruby on Rails). Deze data kan via de officiële REST API opgehaald worden. Ook heb ik ervoor gezorgd dat deze “ruwe” data uit de database omgezet wordt in zgn. tiles (kaarttegels), de plaatjes die de online-kaart vormen (Mapnik, OSM tools, TileCache). Organic Vectory gebruikt deze data voor het maken van 3D-modellen.

Hieronder een aantal projecten waaraan ik bij vorige werkgevers gewerkt heb.

SeaDataNet / GeoSeas

Bij mijn vorige werkgever MARIS heb ik onder andere gewerkt aan de EU-projecten SeaDataNet en GeoSeas. Beide projecten zijn grote Europese samenwerkingsprojecten die als doel hebben een betrouwbare infrastructuur te ontwikkelen voor het beschikbaar stellen van oceanografische resp. mariene geologische datasets volgens gestandaardiseerde formaten en kwaliteitseisen.

SeaDataNet metadata-catalogus

Een centrale metadata-catalogus maakt het mogelijk om op één plek te zoeken binnen de datasets van de aangesloten (40+) wetenschappelijke instituten. Een gedistribueerd systeem zorgt ervoor dat datasets in standaardformaten en op transparante wijze gedownload kunnen worden.

Ik heb binnen dit project webservices ontwikkeld (ASP.NET, SOAP) en andere server-side functionaliteit gebouwd (ASP.NET, ASP, Mapserver, MS SQL Server Spatial 2008). Ook heb ik gebouwd aan de user-interface (Javascript). Ten behoeve van (met name) dit project heb ik de OGC-standaarden binnen het bedrijf geintroduceerd (WMS, WFS en CSW). Verder heb ik in samenwerking met Europese partners een metadataformaat ontwikkeld op basis van de metadata-standaarden ISO 19117 en ISO 19139 (zie poster). Binnen dit project heb ik ook een CSW-server opgezet (GI-cat, zie andere poster). Verder heb ik binnen deze projecten technische bijdragen geleverd bij overleggen, documentatie verzorgd en Europese partners ondersteund bij de installatie en configuratie van software-componenten (Apache Tomcat, Java) en data-conversie.

Humboldt

Humboldt is een EU-project dat de technische middelen ontwikkelt en onderzoekt voor het opzetten van een zgn. Europese Spatial Data Infrastructure (SDI). Een SDI is een infrastructuur (bestaande uit o.a. techniek, standaarden, processen en organisatie) die ervoor zorgt dat geografische data gemakkelijk uitgewisseld, verwerkt en gebruikt kan worden. Het project draagt hiermee bij aan de uitvoering van de Europese INSPIRE-richtlijn.

Binnen dit project heb ik een CSW-server (GI-cat) opgezet en hierop een client gebouwd (Javascript), een WFS-server opgezet (GeoServer) en bijgedragen aan documentatie.

INSEA: weergeven van modeldata

INSEA

Binnen het project INSEA, een samenwerkingsproject tussen drie kustregio’s voor het ontwikkelen van ecologische modellen voor kustwateren, heb ik een webgebaseerd GIS-portal ontwikkeld (Javascript, ASP.NET/C#) dat modeldata (rasterdata) weergeeft in een kaart. De gebruiker kan kiezen welke parameter moet worden weergegeven (zoals fosforconcentratie, opgeloste zuurstof) en datum, tijdstip en diepte.

De brondata bestaat uit een NetCDF-bestand of OpenDAP server. Deze rasterdata wordt omgezet naar kaartmateriaal met behulp van de software ncWMS (een Java-applicatie die draait onder Apache Tomcat). NcWMS is een WMS-server die NetCDF-data omzet naar een WMS-kaartlaag via een uitbreiding van het WMS-protocol. De overige kaartlagen (bathymetrie, landkaart) worden weergegeven via Mapserver.

Hoofdscherm bodeminformatiesysteem Nazca

Bodeminformatiesysteem Nazca

Bij CSO Adviesbureau (tegenwoordig Nazca IT Solutions) heb ik gewerkt aan de ontwikkeling van het webgebaseerde bodeminformatiesysteem Nazca. Ik heb o.a. gewerkt aan de ontwikkeling van een nieuw datamodel (Oracle Spatial), een module voor het importeren en exporteren van XML-bestanden in het SIKB-formaat (ASP.NET/C#, NHibernate, XSLT) en de GIS-viewer (Flash/ActionScript).

KML-server (Google Earth)

Google Earth biedt de mogelijkheid om eigen gegevens op de wereldbol te laten zien in de vorm van KML-files. Dit zijn bestanden in een XML-formaat waarin zowel de data zelf wordt beschreven als hoe deze moet worden weergegeven. Bij grote hoeveelheden data lukt het niet om alles in één KML-bestand te zetten; het bestand wordt dan veel te groot en het inladen veel te traag.

Google Earth met dijken en bebouwing afkomstig van KML-server

Om dit op de lossen heb ik een KML-server gebouwd: een webapplicatie die van Google Earth de coördinaten van het te bekijken gebied doorkrijgt en op basis hiervan de KML van de gegevens binnen dat gebied teruggeeft. Deze server is geschreven in ASP.NET/C# met PostGIS als database (PostgreSQL met spatial extensies). Eén van de complicaties bij deze applicatie is, dat in Google Earth de gebruiker niet altijd loodrecht op het aardoppervlak kijkt (zoals bij een gewone kaart), maar ook onder een hoek kan kijken. Bij een kleine hoek komt de horizon in beeld en kan de hoeveelheid gegevens alsnog te groot worden. Dit is opgelost door de hoeveelheid data afhankelijk te maken van de kijkhoek.

ArcGIS / ArcObjects

Ik heb bij CSO ook gewerkt aan een aantal ArcGIS-applicaties (ArcObjects, Visual Basic), zoals een applicatie voor vaarwegbeheer en een applicatie voor landschapsbeheer.

Naar boven