GeoTools

OSGeo

Saturday, October 6, 2007

GeoTools was really well represented at this years Free and Open Source Geospatial conference. One of the advantages of being a library is that we can really be everywhere. The downside is that even if you attended the conference (wasn't it great!) you could not of managed to catch all that we had going on.

I am going to start with just a list of links and then try and ask the authors for a couple of comments on how their lab / presentation / demo went. I made a point of talking to people in the evenings and asking about their favourite presentations - where possible I have shared their comments.

Workshops and Labs

GIS for Web Developers

Scott Davis is a long time GeoServer power user, and generally great at abusing our software stack and sending good bug reports. Apparently the practise has warmed him up for writing full length books. As I understand it Scott used and abused a harmless GeoServer war in wonderful ways cumulating in a nice AJAX front end.
Scott's talks are always well received, now if only he cleaned up after his Lab things would of went better for me :-) His class configured GeoServer to the point where it was not stable for my GeoTools lab later in the week.

Introduction to Geospatial Collaboration using GeoServer

These guys had a great time - I ran into The Open Open Planning Project crew after words in the pub and they were all smiles. The room was at capacity with 80 people.
A full complement of GeoServer developers showed to provide lots of personal attention. Thanks to Chris Holmes, Justin, Saul Faber, Scott Davis and Simone.

An Introduction to the uDig Open Source Desktop

This lab was great. I talked for a total of a two minuets before letting people have at it. We went through a wide range of functionality and were sure to try out as much of the open source software stack as we could get out hands on (everything from PostGIS to MapBuilder).
A range of power users and developers showed up to provide that all important personal touch. The room was completely full (with a couple of mac user sitting on the floor at the back). Everyone went home happy.
Thanks to Jody, Jesse, Cory, Andrea, Silvia and Brock for making our dreams a reality.

How to Cope with GeoSpatial - The Pragmatic Intro for the Java Developers

This was the only hard-core hands on programming lab at the conference this year. Thanks to everyone who attended! GeoTools was used to access a Web Map Server, generate a Shape file, hack away at PostGIS (using Common Query Language and Filter 1.0). Students that finished early got a chance to visualization with Images and Shapefiles.
One user commented that this was what a lab should be - not a lot of talking and all the instructions printed out. Don't tell the uDig crew but we used QGis to check that shapefiles were generated correctly. One difficulty we encountered was the local install of GeoServer had been messed up by a previous Lab.
Thanks to Jody, Martin, Brock an Melisa for pulling this one together. Special thanks to Andrea and Jesse for the code review.

Opening Plenary Session

Geoff Zeiss provided an interesting speaker; who served to underline the need to talk standards as part of a larger motion of pushing GIS into everything. Apparently some of the building standards have been tricked into adopting GML and actually placing their buildings somewhere in the world. Some interesting work ahead of us I suspect before GIS dissolves into the general grab bag of IT constructs and finally becomes just another domain. It was interested that he felt validated in the decision to go open source based on "the community" providing FDO with access to a few more formats. It is important to recognize what value people are expecting out of their open source experience; sometimes it is not what you would expect.
Tyler Mitchell was on hand to give nice little talk about community complete with interesting expanding circles that showed the connectedness of all things. Long winters in Canada make for great diagrams - he has a much better expression of what was going on here Touchdown! FOSS4G 2007 A Resounding Success
Peter Rushforth was in town representing the much respected GeoConnection program. GeoConnection has been an important source of inspiration and funding for many projects that feed off of (and into) GeoTools development. He appeared a little bit disjointed from the surroundings, one of the major themes was the Canadian Data Infrastructure which is a little bit of a tough sell to an international conference focused on software. I sometimes get the impression that Canada's funding of open source geospatial software is a bit of an accident on the way to cold hard data deliverables.
Still warm fussy software makes you feel good and GeoConnection has been the motivator for more than its fair share.

Lightning Talks

James Macgill (our honoured founder - yes he is from England so I am jolly well going to spell honoured with a "u") was on hand to talk about the extravaganza that was the OSGeo summer of code projects.
Raj Singh made use of the lightning talks to talk about how OSGeo and standards can play well together, and how OGC is sure to include an open source reference implementation for new standards as they come out. It was nice that Raj recognized the difficulties we have in cooperating around standards (even just access to them is difficult). It sounds like the combintation of OSGeo to talk for us and personal OGC membership will help address many of these concerns - here is hoping.
Aside: Schuyer Earle did his usual amazing attention span-of-a-gnat-on-speed how-long-can-you-watch-him-click-through-slides-before-you-blink and lose-context-for-the-rest-of-his-talk power hour tour of off the wall subject material. This year it was about breaking down the subject material of the conference and trying to make sense of it using only the POWER OF STATISTICS. He presented a series of really interesting scatter plots showing how the presentations and labs split up on a number of metrics. It was really very cool to see Java so well represented and recognize that GeoTools was powering a lot of the show. What a difference from two short years ago.

Presentations

A Survey of Open Source GIS

Paul Ramsey's perennial survey talk is always a hit - and every year you need to see it again. It is really with downloading the pdf from the above page - but you will have to image Paul's wry wit for yourself. In talking to people afterwords many listed this talk as the cornerstone of their FOSS4G experience; based on the survey they planned out what presentations and projects to hunt down for the remaining three days. You can always tell who attended this talk as they started categorized everything in terms of the "Java" tribe or the "C" tribe.

WMS Performance: Mapserver vs. Geoserver

Justin assures me this was supposed to be titled "MapServer and GeoServer" but apparently "vs" makes for better attendance. Have a look at the attached pdf - the numbers (and everyones hard work) really speak for themselves.
The real take home lesson here is to spend some time configuring both application if performance is critical to you. Actually the real take home lesson is to have a look on our support page and hire all us smart developers to make the software faster!
Thanks to Justin and Brock for putting on such a good show. Thanks to Andrea for making GeoServer king this year

uDig Case Studies

I had a sneak peek at this talk and it is amazing the kind of diverse applications uDig has morphed into. The combination of eclipse rich client platform and the ability to "re brand" has resulted in a list of very targeted application. I wonder if this ability is the secret to avoiding the Jump fork explosion? 
Thanks to Jesse and Paul for rounding up all the contents; as well as the udig-devel list for providing the raw - enthusiasm- material.

JGrass and Udig, chronicles of a lovestory

Andrea Antonello is a funny guy; did that come through in his presentation? Update this wiki and tell me what happened!

An integrated client for Web Processing Services - Upgrading uDig with Processing power

I had a look at this work as it was under development (thanks for the uDig patch guys!). How did their presentation work out?

GeoServer, past, present and future

The Open Planning Project triumphs again - this time at the hands of their Lead Developer (when did this happen Andrea?).
Thanks to Andrea and Justin for tag teaming this presentation, great work guys.

GeoServer and the GeoWeb: KML, GeoRSS, TileCaching and SuperOverlays

As far as I know this is the only presentation to get interrupted by a round of applause - for the GeoServer/Google Earth time demo (which is admittedly really cool).

Secrets of the JTS Topology Suite

Apparently this presentation resulted in one of the most memorable quotes: "This talk is not about fluffy geo web services, it is about the serious stuff - Geometry". Everyone thought this was really funny; and were trying to capture the exact tone of voice at the pub afterwords.
Apparently the talk was great; but no match for Martin's wit.

IBM DB2 Express-C: A Free Database for Open Source Spatial and XML Development

David Adler is a long time GeoTools committer. He was here as part of a team to announce the free version of DB2 Spatial. Our man on the street, Martin Davis, was there in hopes of seeing source code ( Free is not the same as Open Source). The good news for us is (finally!) the ability to ship DB2 jdbc drivers so GeoTools can work out of the box with DB2 Spatial.
Thanks to David Adler and the DB2 team for the great talk, and supporting GeoTools for many years.

Using Open Source to analyze Canada's National Forest Inventory

GeoTools was used as part of this work - anyone attend the talk?

A New Geospatial Enterprise Platform Built on Open Standards and Open Source

Another win for GeoTools. Thanks to Belay for making this happen.

Next generation of raster support for the GeoTools-GeoServer stack.

You may know Simone by reputation. You may known Simone is really tall. What you do not know is how fast he can talk - this really felt like a 20 min lightning talk covering all things raster! It was telling that this room filled up with the hard core GeoTools developers as we tried to understand what Simone has done to make raster access so darn fast.
You will really have to read the pdf; there was a lot of content packed into those 20 mins. A GDAL bridge, speed, nD coverage, some more speed, and so on...
There were a couple of great quotes - at one point Chris Holmes asked "How did you figure it out?" with respect to JAI performance. The answer as always is "I read the source code". The good news is that Simone has been collaborating with others on the nD coverage work, and that he has a much closer relationship with the Java Advanced Imaging Team now - so his patches will take less time to fold into the mix.

Managing WMS and WCS multidimensional NetCDF Datasets with Geoserver

This was a really impressive talk giving a taste of what is to come. If Simone went really fast, the combination of Martin Desruisseaux and Mickael Treguer took their time and showed us how the parts fit together. As I understand it they have taken on the enormous task of 4D grid coveages (x,y, height and time!) with a killer combo of PostGIS and the file system. It looks like they took great pains to keep as much as they could at the AffineTransform and integer arithmetic level.
The best part was their demo showing how fast the results were and how much data they had access to.
Be sure to check out the pdf for some nice diagrams; and bother them to put their demo on up on the web. Thanks to Martin and Mickael for making this one happen.

Heavy Traffic: How The BC Integrated Land Management Bureau Used Open Source to Deploy Government-Strength GeoWeb Services

Here is a nice end user story about using all the part of the open source puzzle to handle a very impressive volume five terabytes of data. GeoServer is used for the WFS part of the equation, have a look and see how it is done.

Feature caching in GeoTools and uDig

Another Summer of Code project - did anyone catch the presentation?

Coordinate System Transformations in Geotools and uDig - Contribution of Google Summer of Code 2006 and 2007

Jan Jezek has been responsible for two Summer of Code projects; this year he focused on defining ad-hoc transformations. Anyone catch the presentation?

What's Going On Out There?: Using GeoServer for Analysis of Spatio-Temporal Environmental Data

Thanks to Tyler Erickson for putting this one together.

Geoserver and Open Standards: A Success Story

Saul Farber is a long time contributor and responsible for all our ArcSDE gooey goodness. His talk was aimed a bit at the business crowd and I head back some positive feedback from those attending. He told me he may change the focus a bit next time - but from all accounts this talk went very well.
Thanks to Saul Farber for making this (and so much more) happen.

Bird of a Feather Session

New Feature Model

We had a really interesting "BOF" session; initially with the mandate of figuring out the details for our upcoming cross project code sprint (GeoServer, GeoTools and uDig are moving to a standard Feature interface based on ISO19109).

Real Live Users

However when actual users showed up we quickly expanded our focus and had a good talk about what is needed (documentation!), how important is api stability (documentation!) and everyones broader experience (needs documentation!). I must thank everyone for their input on this topic - I will double back with my notes in a couple of days.
We had an interesting discussion about where patches go to die. Apparently some patches for the unsupported Oracle datastore have just stayed attached to their bug report. We talked about the need for an oracle module maintainer, and the difficulty of producing open source software against proprietary technology.
Of interest was the later arrival of gvSig developers and their difficulties in working with us. The combination of a difference in license (they are GPL and GeoTools is LGPL) and a language barrier results in a lot of forked code. It was fascinating to learn their large developer base, user interface testing department, and the availability of patched up GeoTools datastores.

Value of GeoAPI

We had a couple more interesting questions - the value of GeoAPI. In marked contrast the the keynotes standards are often viewed as a barrier to communication in an open source project. I have always thought that packaging up standards in nice friendly Java interfaces was the way to communicate at this level, but perhaps this is only an option when their is funding on the table.

Value of OSGeo

The final question was geared toward the value of OSGeo as a foundation. Here are some notes on the value of OSGeo:
  • GeoTools Developers - guidance with the few legal issues raised (how to we write a contributor agreement etc...)
  • GeoTools Users - documentation! While we could approach OSGeo for funding I would feel uncomfortable accepting money until we are through graduation.
  • GeoServer developers - contacts with other projects; in particular the #osgeo channel is well received
  • gvSig Developers - brand recognition

Demo Theatre

The Demo Theatre was very well received; and for me at least it was a great way to see what projects were while basking in the warm glow of caffine and/or lunch. There were a few standout presentations (route finder, open street maps and gvSig did really well). Most of the usual suspects were much too busy doing presentations - so this stage ended up being a good view of the exhibitors and interesting little projects.

uDig Demo

Jesse did a great job of showing off the capabilities of uDig. It was noted that uDig is going for record of 12 release candidates (edging out the previous winner GeoServer). All is forgiven as uDig makes for a great show of what is possible with the open source software stack.
In fact it was so good we had Jesse fill in for a dropped presentation; and then repeat again as we waited for Safe Software to get in the game.

Summer of Code

We had many of our students show up for the Google Summer of Code demonstrations. Thanks to Hans (sorry I could not be there buddy it conflicted with my lab). Jans had a pretty slick warping transform thing going on.

JTS Topology Suite

Martin Davis kindly gave a demo of basic Geometry operations - using JUMP. His testing app for JTS was untested on Java 5 resulting quick change of venue. While it may not sound like much; JTS is the foundation of almost all we do here - and a lot of people really understood what was going on when they coudld see spatial relationships naked on a projector (rather than dressed up with fancy styles in the middle of a web application).

Closing Plenary

Next year FOSS4G 2008 will be in South Africa - in Capetown. A few underhanded comments about the fabulous Victoria weather and we were treated to videos of what look to be very impressive facilities. What was impressive was the amount of Government support being thrown in behind next years conference. It sounds like they are going to co-locate with some traditional proprietary GIS vendors just so we can cause trouble.
I am a bit concerned that South Africa is out of the traditional target market for Open Source GIS; I hope this gives some local advocates a chance to shine.
The Closing Panel Discussion was amusing, with Tim Bowden doing his best to coax the rest of the panel into a semblance of disagreement with his quote of "GIS is dead". A great job all around.
The Sol Katz aware goes out for achievement in the field of open source geospatial software - and this year every one was pleased to see Stephen Lime recognized for his vast contributions; and kind hearted shepherding of MapServer over the years.
Paul Ramsey enjoyed putting an innocent bystander (Adena Schutzberg) on the spot for a bit of a recap. Adena went through some of the changes she has scene in our community as to grows up, and is starting to elbow around for more room. We are all acting with more confidence and it is nice to have that confirmed as we head out into a new year.

Pictures














Code Sprint

Last year we were a little bit terrible; we ended up gathering up laptops and ignoring the conference while we hacked away on things near and far. This year the organizers were kind enough to organize a "Code Sprint". We had a great time, and it freed us up to pay attention to our user community.
A great idea all around.
To celebrate we managed to break absolutely everything. After much talk, blood, sweat and occasional tears GeoTools is finally stepping out of the confines of a "flat" feature model (think database table) to the wider world of associations, properties and (gasp) operations. 
Given our ambition we did not finish in a day, or even three. As late as Tuesday the following a week a dedicated bunch of volunteers was still putting the parts back together.

Day 1

We started transition by "excluding" the usual GeoTools Feature and implementation classes from our build; and then went around fixing the compile errors.
Or we would of liked to but Internet / SVN access was spotty. We relocated after lunch to Refractions and proceeded to hack until all hours. Simone and the uDig crew joined us after 5pm and they had done amazing things with raster rendering speed (wow!).
Justin was lost into the abyss of main (updating a lot of dead code that is unused).
Jody was updating shapefile, CQL etc...
Zorn was kind enough to update the demo modules.
We were all very productive until David Blasby showed up and started getting everyone to play their presentations for him   :-)
After dinner we came back to Refractions and if anything rendering rasters in uDig was even more amazing.

Day 2

Chris Holmes and David Windslow joined the fray - David is getting a really scary introduction to GeoTools and is sending patches to Justin as he works through modules like validation
Andrea finished up renderer and jdbc and started in on PostGIS.
Jody finished up shape file.

Day 3

Starting up now - svn access seems to be down right now (boo hoo).
The gates have opened up on the jdbc datastores ... I think David and Chris will be working on that today.
Andrea is looking forward to updating his baby - PostGIS versioning.
Jody is proceeding with the wfs module.
I am pleased to report that today (a week later) Andrea was able to report back with an all clear!
Subject: Trunk builds for me
Hi all,
breaking news, I managed to finally get a full build out of trunk (the bad news is that it took 12minutes).
I just had to fix some unit tests in shapefile renderer, and while I was at it, fixed mysql as well (that is, made all of its runtime tests pass against a real database).
Now, we just need to get the server back in shape.
Cheers
Andrea
The combination of a successful gathering of the tribes, and with this roadblock removed, the future can only be better!