Other posts

  • Tue 26 April 2016

    OpenLayers 2 Custom Build

    A bit of a blast from the past now that OpenLayers 3 has been released but it may be useful for someone who is working on or maintaining an OpenLayer 2 project.

    Create a list of OpenLayers 2 classes used within a code base suitable for including in a custom …

    comments. read more

  • Mon 12 October 2015

    Testing Python & Postgres

    I recently pulled together a project to demonstrate testing Python functions that interact with a Postgres database. I find that this sort of thing crops up occasionally and the project is an attempt to distil the approach. The main points include:

    • Creating a fresh temporary database via testing.postgresql prior …

    comments. read more

  • Tue 08 September 2015

    Read-only Postgres database

    There are times when I've needed to effectively make a Postgres database read-only, for example after loading or updating reference data. In the past I've revoked permissions from database roles to achieve this but as this post on the PostgreSQL list states, it's possible to do so by making all …

    comments. read more

  • Thu 20 November 2014

    Loading PostGIS

    Notes from a talk at PostGIS Day, London 20th Nov 2014.

    The options

    All support basic options such as specifying table names, schema, SRS etc.


    Graphical interface to shp2pgsql tool shipped with PostGIS to load ESRI Shapefiles via pgAdmin III.
    Graphical interface to ogr2ogr command line utility …

    comments. read more

  • Sun 07 September 2014

    Practical OpenLayers 3 & Leaflet

    I ran a 2 hour workshop at OSGIS 2014 introducing OpenLayers 3 and Leaflet.

    A hands on introduction to using OpenLayer 3 (OL3) and Leaflet to display spatial data on the web. The workshop will introduce the two libraries, the underpinning concepts and strengths of each, and take delegates through …

    comments. read more

  • Thu 17 July 2014

    GNU Parallel all the things!

    I've been doing a lot of data processing recently and have been looking for a way of running bulk data loads into PostGIS in parallel to make use of all available cores. The work has mainly revolved around loading national cover of Ordnance Survey OS MasterMap and VectorMap Local for …

    comments. read more

  • Tue 18 February 2014

    First few months of Clojure

    I've been learning a bit of Lisp on and off for a few years, I first read (about half of) Land of Lisp, then Practical Lisp then I came across Clojure a modern Lisp that runs on the JVM and since I've been reading Clojure Programming and working through koans …

    comments. read more

  • Fri 18 October 2013

    Custom GeoServer GetFeatureInfo Template

    The default GeoServer GetFeatureInfo Freemarker template is a simple table and doesn't work very well when displaying the content in a web map popup. It's a common requirement to change the GetFeatureInfo template to an unordered list, to capitalise the title and attribute names. Here is a sample content.ftl …

    comments. read more

  • Mon 28 March 2011

    Recursively delete empty directories

    To recursively delete all empty directories from the command prompt in Windows. Open command prompt and change to the desired directory then enter the following:

    for /F "tokens=*" %f in ('dir /AD /S /B ^| sort /R') do echo rd "%f"

    This command generates a list of all directories and sub …

    comments. read more

  • Fri 07 January 2011

    Convert a directory of TIFFs to greyscale using ImageMagick

    Change to the directory then run the command:

    mogrify -colorspace Gray *.tif

    comments. read more