Archive for December, 2006

2006 Year in Review

Wednesday, December 27th, 2006

General Thoughts

OSGeo bootstrapped itself from the crumbled MapServer Foundation announcement at the end of 2005. Considerable energy and leadership from people like Frank Warmerdam, Jo Walsh, Gary Lang, and Tyler Mitchell have kept it moving forward and working to attain the goals which it set forth to accomplish. I expect that it will continue to gather momentum in 2007, despite Sean and other’s continued hating on it, because the benefits it provides are already starting to be realized in terms of visibility, cross-project collaboration, and financial stewardship.

ESRI had their Vista release. I’ve been mostly out of the ESRI loop the past couple of years, due to my involvement with open source stuff and the fact that the ESRI stack is too stovepipe-like for my development group’s taste. From my small business/local government perspective and GIS weblog perspective, it is clear that many are looking at open source/cheaper alternatives to accomplishing the same tasks. Integrated and polished open source solutions will have a real opportunity over the next 18 months (obviously in the web space with Mapguide, MapServer, GeoServer, and OpenLayers, but there are other areas too).

Apple continues to clean house. I so wish I would have bought stock after recovering buying my first Mac three years ago. 2007 should be exciting in the Apple world with a new OS release for Microsoft to attempt to copy and continued hardware releases from Apple’s wise decision to hop on the i386 bandwagon. Hobu, Inc. is completely an Apple shop now as far as workstations and laptops. Apple’s servers are interesting and nice from a management perspective, but their cost does not justify their existence when compared to commodity pizza boxes and a solid Linux distribution.

Review

February 4th

I was in an O’Hare hotel for the birthing of OSGeo.

February 12th

I completed the MySQL driver for OGR. This was my first experience developing for OGR, and it was straightforward. Maybe someday MySQL will realize that they need to beef up their spatial support. Currently for most, it is but a speedbump on the way to implementing PostGIS, I think.

Late February

I released the first version of the MapServer Buildkit. The Buildkit is a big ball of wax that has everything pre-configured for you to build MapServer on Windows with MSVC2003. The Buildkit has been the base from which MS4W has been built on, and its use has eliminated my need to release an independent set of MapServer windows binaries for ArcSDE and Oracle Spatial support.

March 5th

My wife accepted a job at the University of Iowa, and I found out I’ll be moving to a new town.

April

I was busy setting up Buildbots for GDAL, MapServer, and GEOS. They have been an excellent way to keep track of developments in these projects, and Mateusz has taken up the torch of helping to implement them for all OSGeo projects that want them.

June 1st

I was at MetroGIS explaining to Clint Brown of ESRI that it makes sense to release the ArcSDE C API because third party developers building software with it will *sell them more software.* It had no effect…

June 26th

LizardTech releases their latest SDK with input from Frank Warmerdam and myself about the licensing agreement. I also did some testing to make sure it worked as a universal binary. I earned a LizardTech polo shirt for my efforts.

August 29th

I headed off to FOSS4G in Lausanne, Switzerland after honeymooning in Italy for a couple of weeks.

Sept 18th

Returned home from the conference to a broken toilet, flooded house, and wet and trashed computers. Most of the damage was contained to my office, the bathroom above, and the basement below. One silver lining was a Mac Pro to replace my dual G5, but other than that, it’s been pretty miserable.

End of November and Early December

During this timeframe, I was working on numpy bindings for GDAL, I was closing bugs in preparation for GDAL’s release, and I received a commitment for funding to support the development of ArcSDE Raster support for GDAL.

December 10th

I created a new website to revive PySDE. I will provide more detail about that in a future post.

2007 and Beyond

As I noted in my review section, my wife has accepted a job at the other university in Iowa. Telecommuting back to my job at the Center for Survey Statistics and Methodology at Iowa State is not an option, and I will be striking out on my own to try my hand at consulting full time. The exact date has not been set yet, but it will coincide with the repairs to the house in Ames from the flood and our ability to sell it. So far, my prospects look fairly good, but in a couple of months I’ll be looking to take on more. Here’s your chance to get in line to hire me :)

OS X and I got Geoserved

Saturday, December 16th, 2006

Attempt #1 - Try to install it on OSX Server’s JBoss (45 minutes)

My machine meets all of the requirements of the Install Mac OSX document on the site. I tried following the scant document, even interpolating some necessary things like changing file permissions and ownership when needed, but I was never able to get it working this way.

Attempt #2 - Try to install it directly in a fresh Tomcat (45 minutes)

Next, I thought it my be prudent to try install in a fresh Tomcat instance, as this would likely be the most common configuration and installation of Tomcat. I got Tomcat working and I grabbed the geoserver.war file and dumped it into webapps. Restarted Tomcat and went to ./geoserver and got nothing.

Attempt #3 - Try to install the packaged binaries (geoserver-bin) (1 hour)

After converting the linefeeds of the startup scripts (dos linefeeds in a shell script that supposedly starts the server is inexcuseable) and following the documents for setting, java finally dies with a bunch of java.lang.NullPointerExceptions.

Update: After some more tweaks, pops, and pokes and synthesizing the Geoserver wiki into my neural network I was able to get this approach to work.

My Failures

  • I’m impatient and I don’t like to read documents. Geoserver caters to me because there isn’t that much to read.
  • I’m running OSX, which evidently isn’t a common configuration. Java’s java, and it is supposed to run everywhere though, right?
  • I’m not a java developer, so I don’t have the experience to weather common trip-ups that a developer would have.

Geoserver’s Failures

  • Wikis are horrible for project documentation. They are by nature divergent and the result is conflicting information. I would much rather have a single document that is precisely wrong once than four or five documents that are imprecisely wrong in different ways. As a naive user, I have no way to descriminate between the various bits of information and determine which are right, which are wrong, and which are current.
  • Geoserver’s (this is probably just java in general) packaging is very spartan. It and the documentation assume I actually know what I am doing. The common use case of dumping things on a windows box appears be covered though, so maybe that covers 99% of the users, and I’m just in a very small minority.

You could argue that I’m an impatient, no-documentation-reading, know-nothing user who hasn’t spent enough time with the project and you would be right. These attributes still should prevent me from getting something going and seeing what it is about. Good packaging is hard. Good documentation is hard. Do people have exactly these same frustrations when they start out blind, naked, and dumb with MapServer too?

Update #2 I maybe just didn’t spend enough time and was too impatient, because after three or four hours I was able to get things to work. The problem of not having sexy or straight-forward enough documentation and packaging for open source software can make the barrier quite high. I know that most of the open source GIS projects I’m involved with continue to have this problem as well (my rhetorical question about MapServer notwithstanding). Starting again with an unfamiliar project with fresh eyes highlighted how frustrating this can be. I have no suggestions how to fix it though, as writing documentation, packaging software, and maintaining project websites is not egoboo-generating work. Maybe someday the firehose will point at these projects and these issues will all just go away :)