New Temporary Home for MapScript Documentation

Until the new MapServer website comes online this summer, I will be hosting the most current mapscript API documentation here at Thanks to mod_rewrite, users should be diverted immediately from my old site and receive a notice when their browser fetches the rewritten URL. These HTML docs are generated (by docutils) from reStructured Text docs that I maintain in the MapServer CVS. Ideally, I'd prefer to generate documents from comments or docstrings in the module source itself using something like pydoc or javadoc, but since SWIG 1.3 emits neither documentation nor documentable wrapper modules this is not an option.

Looking back at email threads from February 2004 reminds me that I was very skeptical at first about the usefulness of an auxiliary API reference for mapscript in the style of the PHP mapscript README document; I thought it would satisfy neither a developer's need for precision nor an end user's desire for nicely-formatted and hyperlinked pages. Users of these docs are indebted to Daniel Morrissette for instigating the effort, Norman Vine for turning me on to docutils, and Howard Butler and Frank Warmerdam for helping with the drudgery of writing documentation.

Sean Reifschneider Photoblogs PyCon

Fort Collins' own Linux and Python advocate Sean Reifschneider blogs PyCon 2005. Interesting photos and fun commentary. My suggestions for code sprints at the MapServer Users Meetings has become a running joke among MapServer developers, but these photos have inspired me to run the old flag up the pole one more time. Past two years, the MapServer project has scheduled releases to coincide with the meeting; this leaves most of the developers in no mood for programming. Any sprinting would probably have to be on some project other than MapServer itself.

update: Hobu just informed me that he proposed sprinting at the OSG05 organizing meeting and it was shot down immediately.

ZCO Application and Management Demo

I'm taking a short vacation, and have just wrapped up the last things I wanted to finish before leaving: putting the ZCO demo application online, and setting up a limited role for guests to see the application from inside Zope's management interface. The URL is

The most interesting combination of demo layers are global_mosaic, zpoints/x, and cpoints/dot. The first demonstrates ZCO's capability to consume WMS, while the others show layers derived from data maintained in the ZODB rather than on disk in the form of WKT geometries in a Zope File (zpoints) and points from a Zope catalog query (cpoints). See demo/zdata/points_wkt and demo/zdata/points_catalog within the Zope management interface.

Artem Pavlenko's mapnik

Artem is the developer of mapnik, a C++ mapping toolkit, and we have been talking about collaborating on a mapnik-based mapping engine for PCL that might, at a user's preference, be used in place of the current MapServer-based engine. Artem is keen to use Anti-Grain Geometry for rendering. I do not know how its performance compares to GD -- but after a look at the AGG demo page I can not deny that AGG is far more slick and featureful. Mapnik will also include a C++ implementation of OGC-style filters comparable to that of GeoTools.

Depending on how quickly Artem works, and my impression is that he's more productive than I, we may have some results in time for OSG05.

Paris-Nice Photos by Graham Watson

I love sports photography, images of bicycle racing in particular. The racing season is underway in Europe and that means more excellent photos from Graham Watson. My favorite so far from 2005 is this picture of Alberto Contador (Liberty Seguros) attacking on a freshly snow-plowed climb during stage 3 of the Paris-Nice race.

Python to Drop filter() and map()?

Guido van Rossum is thinking out loud about saying bye bye to lambda, reduce(), filter(), and map(). No comment on the first two -- but filter and map are pretty much obsolete thanks to generator expressions and conflict with the most natural names for two objects of the GIS problem domain. This proposed change won't guarantee that we never again see myMap in Python mapscript code, but it would be a start.

Front Range MapServer Users Group Meeting

Donnie Marino is hosting the first meeting of the Front Range MapServer Users Group tomorrow, March 9, at his home in Longmont. It's an open-ended social gathering from 7pm onwards. Sounds like it should be a good mix of users: academics, engineers, web programmers, open source zealots, and those finding the right use for open source software in otherwise COTS shops. I'll finally get to meet 3 people that I only know from the #mapserver channel on freenode. If you missed Donnie's post to the mapserver-users list, send him an email to get directions.

Moving Project News From Sourceforge

I'm disatisfied with Sourceforge's project news capabilities and starting this next week will be publishing news of the Python Cartographic Library and Cartographic Objects for Zope projects on this site.

Open Source Geospatial 2005

I am helping Howard Butler run a Python GIS hacking workshop (scroll down a bit) this coming June 16 at the 2005 Open Source Geospatial Conference in Minneapolis. This is the 3rd year for an event that began as the MapServer Users Meeting. In 2003 I presented the ZMapServer project and in 2004 lead a workshop on MapServer's scripting interface. Hobu is also a perennial presenter and the organizer of this years' session of lightning talks.

We have 4 hours to hack away at some interesting problems:

  • Geometry and raster processing with Python, GEOS, and GDAL.
  • Geocoding, RSS parsing, and map rendering with MapScript.
  • Wrangling OGC Capabilities, GML, and WFS with Elementtree.
  • Free time near the end to explore specific interests of attendees.

Howard tells me that we're well on our way to filling the workshop seats. If you are interested, don't delay.

My proposal is submitted, but no word yet on whether I'll get to present on the PCL and ZCO projects.

Flamebait in GIS Monitor

Last week GIS Monitor published some fantastic flamebait by Manifold's product manager, Dimitri Rotow. Exploiting a flamboyant personality and the natural tensions between commercial and open source projects seems a bit irresponsible to me. Is this the new tone of the magazine? If so, I suggest a change of name to GIS Foodfight.

Howard Butler has a thoughtful and humorous rebuttal on his blog.