De winter begint. In de afgelopen maanden hebben we al vast kunnen wennen aan het feit dat de temperaturen dalen. Het dierenrijk bereidt zich voor op de winter door allerlei ‘morfologische en gedragsgerelateerde aanpassingen’. Sommige dieren trekken weg, anderen zorgen ervoor dat ze goed gecamoufleerd opgaan in de veranderde omgeving of gaan in winterslaap. Mensen trekken dikke kleding aan, stoken de verwarming op en gaan als het even kan minder de deur uit. De verwachte economische activiteit blijft in principe gelijk, we ‘horen’ nu eenmaal ongeveer acht uur per dag te werken. Wel worden we meer gehinderd door weersomstandigheden waardoor onze bewegingen van en naar de werkplek moeizamer worden en vaak ook langer duren. Gaat die extra reistijd ten koste van de vrije tijd of ten kosten van onze arbeidsproductiviteit? Hebben wij mensen ook last van een verminderde stofwisseling?En is de winter een periode van minder activiteit in het algemeen?

In de winter zijn een aantal tradities ingebouwd die ons ‘door de donkere maanden heen helpen’. We worden in de koude maanden extra gestimuleerd om ‘te geven’, we geven elkaar
warmte door samen te komen voor de vieringen van sinterklaas, kerst, oud en nieuw. We geven kadootjes, we krijgen kerstpakketten. We sturen kerstkaarten om aan anderen te laten weten dat we ze niet vergeten. Mogelijk brengt de winter ons dit jaar een Elfstedentocht. Een tocht die een groot deel van Nederland actief warmte geeft en een ander deel passief laat genieten. Misschien ga je zelf op wintersportvakantie, sportief genieten van de sneeuw en de frisse berglucht.

Inzichten in effecten?

Ik ben heel benieuwd of geo-informatie ons inzichten kan geven in de effecten van de winter. De effecten op mobiliteit, productiviteit en verbondenheid. Wellicht dat we bijvoorbeeld een mooie toepassing kunnen verzinnen waarop zichtbaar is waar Sinterklaas al langs is geweest en waar niet. Of een kaart die duidelijk aangeeft welk deel van Nederland het meeste warm loopt voor de Elfstedentocht. Ik hoop uiteraard dat we geen visualisatie hoeven te maken van mensen die vast hebben gezeten in monsterlijk lange files of midden in spierwitte landschappen, in onverwarmde treinstellen. En dat we dit jaar satellietbeelden te zien krijgen van een mooie, volle ijskap op de Noordpool.

Geografisch visualiseren

Voor geo-informatie is het nooit winter. Geo-informatie zal altijd beeldversterkend werken en geo-informatie is nog lang niet uitgeput. Geo-informatie wordt ook steeds meer gemeengoed.
En nieuwe sterren aan het fundament vinden steeds weer nieuwe informatie om geografisch te visualiseren. Klaas van der Hoek verwoordde het mooi: “De klant wint zelf in, het is aan ons
als business om dat in goede banen te leiden. Crowdsourcen is daarbij meer dan alleen maar in laten winnen door het publiek”. Laat de ‘Sint staat voor de deur’ websites en de ‘Ik schaats mee’ apps maar komen. En de ‘Vind ik niet leuk’ knop in de auto waarmee je kunt aangeven dat je in de file staat. En laat ons als geo-informatici al deze informatie dan weer verwerken tot nieuwe inzichten. Vol verwachting klopt ons hart!

Nieuwsgierig geworden door eerdere blog artikelen op jwvaneck.org wilde ik ook wel eens aan de slag met de open data die esri aanbiedt op haar infrastructuur met diverse tools en klik en sleep functionaliteit. Ik begrijp dat vrije data niet direct een gratis dienst is, tenslotte kost het in de luchthouden van servers stroom, inspanning en dus geld. Ik wil wel eens weten hoeveel dat dan kost en of het voor neo-geo mensen interessant is om argisonline te gebruiken. Ik besloot het uit te zoeken. Wat kost arcgisonline nu eigenlijk? Dat blijkt minder “open” dan de data die er beschikbaar is.

Wanneer je arcgisonline.com bezoekt wordt je doorgestuurd naar arcgis.com/about. De video op deze pagina laat zien wat er allemaal mogelijk is en dat is veel. Veel GIS functionaliteit lijkt zijn weg te hebben gevonden naar de browser.

Handig is een soort “drieluik” op de pagina waar je meer kunt lezen over publiceren, mobiel en kant-en-klare inhoud waar wordt uitgelegd dat er basiskaarten zijn en dat je op verschillende manieren je eigen data (beveiligd) tot een mooie kaartpublicatie kunt verwerken. Er staat niet hoe.

Onder aan de pagina zijn een aantal open toegankelijke onderdelen zoals Kaart en Galerij. Via deze opties kom je terecht in een omgeving waar je al best aardig wat kan zoals tekenen, meten en de basiskaart wijzigen. Je kunt niets opslaan, hiervoor moet je zijn aangemeld.

Op arcgisonline.com staat dat je 30 dagen mag proberen. Mooi! Maar wat gebeurt er na die 30 dagen? Ik besloot op de “30 daagse gratis proefperiode” te klikken.

Voordat je echt aan de proefperiode begint wordt netjes uitgelegd wat de proefperiode inhoudt. En wat er met jouw data gebeurt. Een ding vond ik niet terug; of ik mijn data kan downloaden en de online variant vernietigen als ik besluit na de proefperiode niet door te willen gaan. Misschien dat esri daar nog een paragraaf aan kan wijden.

Ik besloot geen proefperiode aan te gaan. Maar in plaats daarvan direct op “Prijzen” te klikken. En daar wordt het vaag. Je wordt begroet door een paragraaf met teksten als: “Abonnementen bieden flexibele prijs- en licentieopties…” en “…servicecredits en moet jaarlijks worden verlengd” eindigend met “Neem contact op met uw lokale Esri-kantoor voor prijsinformatie.”

Flexibele prijs- en licentieopties? Hoe flexibel? Flexibel op basis van het aantal gebruikers? Kaart-klikken? Provincie? Kleur ogen? Het wordt niet duidelijk.

Servicecredits? Wat zijn dat? Is dat een soort esri bitcoin? Kun je die ook verdienen? Of alleen uitgeven?

Moet worden verlengd? He, is dit een huwelijk!? Niets MOET worden verlengd in Nederland “Wet van Dam, staatsblad 789 [pdf] van 30 november 2010″…

Neem contact op met het esri kantoor? Zijn de prijzen geheim? Worden deze alleen ontsloten aan een selecte groep? Moet je eerst een paspoort overleggen en gaat esri vervolgens in een zwarte lijst kijken of ze je wel als klant willen?

Kort zoeken op Google deed mij belanden op het blog van James Fee (spatiallyadjusted). James toont hier de prijzen in dollars. Ah, dat is al iets duidelijker.

ArcGISOnline-PricingMaar wat zijn nu die service credits? Het blijft speculeren. Een vriend van James vergelijkt de service credits met de Disney dollar. En de afbeelding op de blog die er bij hoort is een mooi stukje huisvlijt:

EsriDollarMijn vraag is dus: Wat zijn die service credits? Hoe worden ze besteed?

En aan alle arcgisonline gebruikers in Nederland: Wat betaal jij? Zijn de prijzen net als in bovenstaande tabel op basis van het aantal gebruikers? Of is het net als bij de vliegtuigmaatschappijen en loop je het risico naast iemand te zitten die maar 10% heeft betaald voor zijn vliegticket van wat jij uit hebt gegeven?

Ik ben op dit moment een aantal statistische kaarten aan het maken. Daarvoor heb ik de CBS data gedownload vanaf de CBS website en de gemeenten gedownload vanaf PDOK.

In 2011 is de gemeente Hollands Kroon ontstaan. Deze gemeente is een fusie van Wieringen, Wieringermeer, Anna Paulowna en Niedorp.

In de CBS statistiek zijn de oude gemeenten nog aanwezig. In de PDOK kaart is echter de nieuwe gemeente Hollands Kroon al aangemaakt en zijn de oude 4 verdwenen.

Om nu toch de statistieken van de gemeente te kunnen bepalen heb ik een samenvoeg query gemaakt om uit de 4 losse gemeenten de nieuwe gemeente te genereren:

insert into gem_2011_gn1 (
    gm_code, gm_naam, aant_inw, aant_man, aant_vrouw, p_00_14_jr,
    p_15_24_jr, p_25_44_jr, p_45_64_jr, p_65_eo_jr, p_ongehuwd, p_gehuwd,
    p_gescheid, p_verweduw, bev_dichth, aantal_hh, p_eenp_hh, p_hh_z_k,
    p_hh_m_k, gem_hh_gr, p_west_al, p_n_w_al, p_marokko, p_ant_aru,
    p_surinam, p_turkije, p_over_nw, opp_tot, opp_land, opp_water,
    geom)
select 'GM1911' as gm_code,'Hollands Kroon' as gm_naam,
    sum(aant_inw) as aant_inw,
    sum(aant_man) as aant_man,
    sum(aant_vrouw) as aant_vrouw,
    sum(p_00_14_jr) as p_00_14_jr,
    sum(p_15_24_jr) as p_15_24_jr,
    sum(p_25_44_jr) as p_25_44_jr,
    sum(p_45_64_jr) as p_45_64_jr,
    sum(p_65_eo_jr) as p_65_eo_jr,
    avg(p_ongehuwd) as p_ongehuwd,
    avg(p_gehuwd) as p_gehuwd,
    avg(p_gescheid) as p_gescheid,
    avg(p_verweduw) as p_verweduw,
    avg(bev_dichth) as bev_dichth,
    sum(aantal_hh) as aantal_hh,
    avg(p_eenp_hh) as p_eenp_hh,
    avg(p_hh_z_k) as p_hh_z_k,
    avg(p_hh_m_k) as p_hh_m_k,
    avg(gem_hh_gr) as gem_hh_gr,
    avg(p_west_al) as p_west_al,
    avg(p_n_w_al) as p_n_w_al,
    avg(p_marokko)::integer as p_marokko,
    avg(p_ant_aru) as p_ant_aru,
    avg(p_surinam) as p_surinam,
    avg(p_turkije) as p_turkije,
    avg(p_over_nw) as p_over_nw,
    sum(opp_tot) as opp_tot,
    sum(opp_land) as opp_land,
    sum(opp_water) as opp_water,
    st_multi(st_union(geom)) as geom
from gem_2011_gn1 where gm_code not in (
    select cbs_code
        from gemeenten_2012
    ) group by gm_code in (
'GM0366','GM0412','GM0462','GM0463'
)

Voila! Een kind kan de was doen. Let wel op. De percentages zouden eigenlijk netjes opnieuw moeten worden berekend omdat deze ietwat kunnen afwijken ten opzichte van het gemiddelde. Maar in de snelheid is dit voor mij even voldoende!

Nu langzaam aan vele datasets beschikbaar komen op http://www.pdok.nl wordt het steeds interessanter om te zien welke gegevens onze overheid heeft. Het wordt ook steeds interessanter om te onderzoeken hoe lagen kunnen worden gecombineerd en welke nieuwe invalshoeken hiermee zichtbaar te maken zijn! Al met al een goede ontwikkeling.

Zo is er een bestand beschikbaar met alle wegen van Nederland, het zogenaamde NWB wegen bestand. Dit bestand kun je downloaden op https://www.pdok.nl/nl/producten/pdok-downloads/atomfeeds/n

De NWB wegen zijn volgens de metadata op nationaal georegister van 2012-06-18. Ik heb dat bestand gedownload en vervolgens ingezoomd op voor mij bekend terrein: Het startpunt van de nieuwe zuidelijke rondweg bij Den Bosch, net boven Vught.

nwb_wegenIk ben goed bekend in deze omgeving en ken de nieuwe zuidelijke rondweg goed. Het NWB wegen patroon laat echter niets zien van de nieuwe rondweg, maar vertoond de oude situatie. Jammer, ik had op basis van de datum een ander beeld verwacht.

Als je de rondweg in OpenStreetMap bekijkt, dan is duidelijk te zien dat deze in de OpenStreetMap database wél aanwezig is. In mijn eigen service heb ik zelfs het tunneldeel “ondergronds” getekend. Let hier op, het afgebeelde gebied is EXACT gelijk aan het gebied in de vorige afbeelding.

osmNu biedt PDOK ook de TOP10 aan als WMS webservice. En wel onder de CC-BY-3.0 licentie zoals staat vermeld op https://www.pdok.nl/nl/over-pdok/uw-speciale-aandacht/copyright

Ik heb ook de TOP10 voor bovenstaand gebied zichtbaar gemaakt en een aantal dingen valt op:

  • PDOK verbeeldt geen tunnels in de TOP10
  • De nieuwe wegsituatie is hier WEL zichtbaar en komt wel erg overeen met de OpenStreetMap wegen!

top10

Als ik alle plaatjes samenvoeg zie je goed het verschil en de overeenkomsten:

combi

Als ik nu een google search doe op de “openstreetmap site:pdok.nl“, dan vind ik hier inderdaad een aantal vermeldingen van OpenStreetMap. Maar bij deze vermeldingen staat telkens als licentie tekst, (buiten de kaart) Kaart: BRT Achtergrondkaart © Kadaster/OpenStreetMap (CC-BY-SA 3.0)

Deze laatste vermelding is niet correct. Dit zou in mijn optiek moeten zijn:

BRT Achtergrondkaart  © Kadaster (CC-BY-SA 3.0) / Wegen © OpenStreetMap auteurs”

en dan bij voorkeur in de rechter onderhoek van de kaart zoals vermeld op de copyright pagina van OpenStreetMap

attribution_example-5e93afffe623568eb1b5f508c9243e3e

Daarnaast is niet helemaal duidelijk of je nu in de TOP10 download ook OpenStreetMap wegen krijgt. Maar dat zal ik nog een keer onderzoeken. Voor iedereen die dus een eigen kaart wil maken vanuit de TOP10 download; let even goed op of de actualiteit van de wegen wel aan je verwachting voldoet.

Wat ik positief vind is dat de gezamelijke overheidsinstanties achter PDOK de kwaliteit van de wegen van OpenStreetMap goed genoeg vinden voor de top10 kaart. En dat is toch een mooi compliment! Als ze nu ook de licentie tekst goed zetten is het helemaal top!

Vandaag liep ik tegen een interessant stukje lichte frustratie op. Al jaren ben ik vooral bezig met postgresql/postgis. Een database die me zeer goed bevalt. Niet omdat het de beste/snelste/veiligste/stabielste database is, maar gewoon, omdat ik er fijn mee kan werken.

Case 1: geometry naar wkt

Vandaag moest ik weer met Oracle aan de slag. Vanuit een Java webservice haal ik gegevens uit Oracle die vervolgens via Rest worden ontsloten. Dan maar even zelf queries bakken en de geometrie omzetten naar WKT (Well known text) zodat ik niet allerlei bibliotheken moet downloaden voor java, maar de data gewoon kan benaderen als tekst.

Oracle:

select SDO_GEOMETRY( 
    o.geometry.sdo_gtype, 
    NULL,
    o.geometry.sdo_point,
    o.geometry.sdo_elem_info,
    o.geometry.sdo_ordinates).get_wkt() 
from onderdelen o;

PostGIS:

select asWKT(geometry) from onderdelen;

Case 2: md5 hash

Mijn database gebruikt wachtwoorden uit andere systemen. Omdat ik geen veiligheids issue wil introduceren, wilde ik proberen de wachtwoorden versleuteld op te slaan. De meest eenvoudige manier hiervoor is in mySQL en Postgresql md5. Ik wil dus met sql een md5 hash genereren voor een wachtwoord zodat wachtwoorden niet zichtbaar in een database hoeven te worden opgeslagen

Oracle:

create or replace function md5(input varchar2) 
  return sys.dbms_obfuscation_toolkit.varchar2_checksum as 
    begin 
        return lower(
            rawtohex(utl_raw.cast_to_raw(
                sys.dbms_obfuscation_toolkit.md5( 
                  input_string => input 
                )
            ))
        ); 
    end;

select md5('mijnwachtwoord') from dual;

PostGres:

select md5('mijnwachtwoord);

Met de pet op van SQL ontwikkelaar is het duidelijk; de queries van postgresql zijn intuitief en lijken op echte mensentaal. De queries van Oracle zijn onnodig complex, ontbreken soms en moeten dan via functies worden herbouwd en zijn absoluut niet in een oogopslag door een leek te lezen. Wanneer ik het aantal uren bij elkaar optel dat ik per jaar door de eenvoudige SQL van Postgresql bespaar met zoeken en prutsen, dan kan ik zelf al snel concluderen dat postgresql voor mij op dit vlak de absolute winnaar is.