ArcGIS Server ADF Rage, "Alt-ESRI" and a call to action…
Posted by Dave Bouwman | Posted in ArcGIS Devt, ArcGIS Server | Posted on 31-01-2008
5
Looking at the comments in James Fee’s post summarizing Doron Yaakobi’s feelings about the ArcGIS Server ADF, this seems to have struck a chord with many other people building solutions with ArcGIS Server.
The question I have is – will we do anything about it?
By that I don’t mean writing more angry blog postings, canceling our EDN subscriptions or other symbolic, by really meaningless actions. I mean lets write the APIs we want to have. This is akin to the Alt.Net movement (if you can call it a “movement”). We’re not saying we’re ditching ESRI for GeoServer and uDIG, but we are going to play the game by our rules. We will use ArcGIS Server for what it’s good for, and skip the rest. If we don’t like the ADF, lets cook up something better.
To show that this is not all talk, shortly I will be releasing a much more solid version of the ArcGIS Server Adaptive Virtual Earth Tile Cache I posted about last week. I’ll post more about it, but suffice to say it’s very flexible and extensible. It will be put up in a public Subversion repository on Assembla for all to have and play with.
They key thing is working together on this stuff – back when ArcIMS 9.0 shipped and ESRI did a half baked job with the ActiveX/COM/not-dot-net connector, dozens of people went out and wrote their own .NET ArcIMS connectors. How many 1000’s of hours were wasted with people re-doing that same stuff? Wouldn’t hindsight suggest that we not all roll our own “Not-ADF” solutions?
So – if we want a REST API, lets built it. There’s not really a whole lot to it if it’s designed correctly. Heck if nothing else we can use what has been done on FeatureServer.org as a road map. Suppose we cook up a server object extension (SOE) that can do all the low-level stuff in raw ArcObjects. Then we write a httphandler that can take the requests, parse the Urls and make calls back to the SOE. If we but the JSON/GEORSS/KML/whatever conversion in the SOE, we’re very light-weight on the DCOM stuff, and can get away with little to no ADF. And if we run this all directly on the ArcGIS Server box, we’re good in terms of licensing.
Once we have that out of the way, then integrating with OpenLayers or Virtual Earth just got a lot easier. Sure it’s not full featured editing, but who cares? We can leave that to the ADF.
So how about it? What to see something change? Want a REST API before September? Want to be able to fix it if something does not work?
If so, drop me a message (contact link above) and for those attending the Developer Summit, lets plan on having a meeting (over beers) to get things rolling.


Regardless of how you manage your software development, at the end of the day it’s really all about communication. Communications in a software development project are typically chain-like. The User tells an analyst what they want, analyst translates into analyst-speak and writes this down. This is passed to a system architect who re-interprets the document, and creates a design and a document in architect-speak. The requirements and design are then passed to the developers, who re-interpret both and then implement their understanding of what the user wants in code. This sounds well and good, but it only works if extreme care is taken at every link in the chain. Recall the game of “telephone”…