Dances with the GeoPython Tribe

During June 21-24, 2016 I attended the very first GeoPython Conference in Basel Switzerland . This event was organized by the Institute of Geomatics Engineering of the FHNW – University of Applied Sciences and Arts Northwestern Switzerland and PyBasel , the local Python User Group Northwestern Switzerland. In particular I should mention key-organizer Martin Christen from FHNW. He and his team made this into a such a great event that GeoPython 2017 is already planned. About 130 people attended, most from Europe, but also from other continents. For a TL;DR the conference website www.geopython.net provides you all the details: not just the program, but also the “post-processing”: slides, photo’s (on Flickr ) etc. The conference also included time and resources (room, food, beverages) for code-sprints. One of the outcomes of the conference-survey was to establish a public GeoPython mailing list at python.org. Details: to subscribe, send mail to: GeoPython-subscribe@python.org with the keyword “subscribe” in the subject, or use the web-interface: https://mail.python.org/mm3/mailman3/lists/geopython.python.org/.

So why a dedicated GeoPython conference? IMHO Python makes more and more sense for Open Source geospatial development. Not just for custom geo-scripting or glueing with e.g. GDAL , or for developing plugins for QGIS and GRASS , but more and more as a mature framework language for geospatial processing and OGC services. The projects PyWPS and PyCSW are an example of the latter. To access OGC services from Python clients there is OWSLib . Upcoming geospatial CMS frameworks like GeoNode and the very recent Boundless Exchange , powered by GeoNode, show that Python has the potential to become “the new Java” within the Open Source geospatial world.

Did I say “Java”? Ok: did almost 20 years of Java, from the very first JDK somewhere in 95/96 (Applets!), through Sun vs Microsoft over Java , from the heaviness of J2EE/EJB s, to the lighter weighings of Spring , the settling of Java as a backend/server technology. Sidestep: “Java” seems to be a central keyword in my family’s ancestry: my great-great grandfather was one of the first people in the world to drink a cup of Java and also was one of the first to set foot on the Indonesian island of Java, being on the same ship with Jan Pieterszoon Coen . My grandfather lived for 20 years in Malang (East Java), working as a civil (Delft) engineer. But I am diverting. The colonial period was by times a violent (by the Dutch) episode in Dutch history, not to be proud of.

But times they are a-changing, technologies are evolving. I am happy these days to develop in Python (and JavaScript for the web-frontend). Like moving from C/C++ to Java back then, and now from Java to Python, what appeals to me: shortened development times, lesser lines of code to debug and maintain, ease of deployment, a central repository (PyPi ) , an independent, vibrant community and possibly more. But again I am diverting, there are great and stable geo-products in Java like GeoServer I use daily. Diversity in programming languages is good. Someone (Jody Garnett ?) posted somewhere about the C-tribe and Java-tribe within the Open Source geospatial world, but can’t find the reference. Back to the subject of this post!

 

Like said, the organizing team has done a great job postprocessing the event, to be found via www.geopython.net so listing all talks/workshops will not add value here. My overall feeling was that this conference, like the very first FOSS4G in Lausanne I attended in 2006, was the beginning of a global community. Above all this was also an event where folks with a shared interest met and conversed. Often at conferences one learns and shares the most during breaks and social gatherings. In short: I learned a lot, being a relative newcomer in the geospatial Python community: GeoNode, GeoDjango, Python with Grass, and much more. For example I learned about some general Python technologies like the Jupyter Notebook that many presenters used. I found that many (like me) are using Flask for simple Python webapps/REST APIs. Flask expresses one of features I like about Python: minimalism.

I am grateful to the organizing team that I could present Stetl in the last session on the last day, since I submitted past the deadline. Luckily the room was still filled, though the cold beer was tempting just ahead. Mind: during the conference there was a heatwave, above 30 degrees C each day, yes in Switzerland. But all in all this was a very cool conference! Hope to see you at GeoPython 2017!