Sunday, March 19, 2006

The Eicher GIS Blog: Quick Hits From the ESRI Dev Summit Day 2


My NCAA tournament picks score has fallen into the D-range on Yahoo, 66th percentile, but I'm not sure that score is current, and things look promising for my score to rise in the later rounds.The inaugural ESRI Dev Summit is over and done. I was able to interface with a lot of people and I learned a lot about ESRI technology, so it was a successful trip for me. The conference was was very well organized and, I'd say, things went surprisingly smooth considering that this was the first time around. Yes, some rooms were overflowing, but for the most part, the most popular sessions were given in the largest rooms, so there wasn't much more ESRI could have done on the planning end to alleviate this.Some thoughts from yesterday, day two:AM Plenary
Two different speaking styles were exhibited by the two guest keynote speakers from IBM and Microsoft. I have to say, I quickly tuned out from the IBM talk. I wasn't drawn into the speaker's speaking style, and the content to me was very high-level, business-y, and treated GIS/location based services as an add-on to a pre-canned presentation. Understandable, but not very compelling to me.
The Microsoft representative was a far more polished professional speaker and a true MS evangelist. I was very drawn in and much of the content for me was new, so I stayed tuned in. I have the same criticism of this talk though, GIS wasn't well integrated in the message. There always seems to be a very simple view of what GIS is when talked about in broader contexts.
I talked to someone that expected presentations of real world case collaborations between ESRI-IBM and ESRI-MS... Perhaps that was shown in the more focused afternoon technical sessions. I didn't attend these.
.NET Web Applications Tech Session
Truly standing room only in this one. You had to get to all the .NET sessions early or you were stuck standing or sitting on the floor.
One thing I always see a lot in web demos of ESRI technology... bad maps. Okay, I'm a cartographer, but in this session I saw fusing of multiple services on same map... Map was unprojected/geographic, and in Canada, rivers were shown, but the other layers were missing. When I was at ESRI we were careful to create attractive maps for demos (okay, were were demoing carto fucntionality) , but we were also careful to be inclusive of non-US audiences. I'm wondering how many cartographers or even geographers work on the web dev team at ESRI.
I have to be honest, I've heard about AJAX, but I never knew what it stood for: Asynchronous JavaScript And XML.
I was pretty impressed but the 'Site Builder' tools that ESRI is providing at 9.2. For someone like me that's new to web development, I'll be starting with these tools.
The 'Site Builder' and .NET web ADF seem very unifying at least w.r.t. ESRI services. Its simple to create sites based on all the ArcGIS services (AGS, IMS) and there's also support for OGC style services.... I did however hear a conversation at lunch, two gentlemen relatively new to ESRI technology, wonderiing what the difference is between AGS and IMS... So _that_ question is still around...
API yai yai.... I saw so many new APIs yesterday and the day before. I guess it's just the price of doing business as they say, but there's a Mobile ADF API, an ArcGIS Explorer API, and a .NET ADF API. I'd say that its a true challenge to develop and app that deploys in more than one of these environments.
Even within web development, there are multiple APIS that developers can work with. ESRI introduced a new general API that can be used, for example, to fuse multiple services and provide feature selection functionality across all services and then to draw the selection in a graphics layer above all of the fused service. It seemed like an interesting thing to demo, but it's also clear that selection/selection drawing is already implemented on the individual service types through their API (e.g. AGS).
ArcGIS Explorer Lunch Session
I'm not sure what this even was, because it wasn't on the conference schedule. I have to thank Richard Howell for telling me about it at lunch. A lot of other people didn't hear about it either because there were only 30-40 people filling the seats of a room that I think would've been out-the-door with people were this a first order session.
Learned that explorer will support 2D maps in addition to 3D globes.
You can customize explorer. Having worked a lot with Google Earth I was glad to hear this. It supports skins, some GUI/application components are configurable on startup, and you can also customize the app and provide custom tools by writing custom tasks.
Explorer supports adding local data: raster, KML, shp, file geodatbase. It doesn't support personal GDB or SDE.
With Explorer you get standard imagery for free from ESRI, same concept as Google Earth. We were told in the session that the free stuff would be 2-3m resolution for the USA. I'm not sure how that matches up to Google.
Explorer has a local cache that allows you to work offline, similar to GE.
I was curious about support for billboarding of text and other symbols for 3d symbology... I didn't ask, but I think this is supported in Explorer by consuming an ArcGlobe service that was authored with this symbology.
ESRI provides a bunch of default tasks including reverse geocode (click on map/globe and get address) and routing. That's pretty cool...
You can save Explorer 'maps' as NMF files with are basically XML.
Euan demo'd the basics of writing a custom task, but he didn't get into very much detail at all. As I understand it, developers just write some .NET components: a Task and a TaskUI. There's also a TaskContext (?) object that allows them to talk to each other. There's nothing fancy here, your objects consume the explorer API (yet another API to learn!), you tell explorer where you .dll is through some other file, and then you put the dll at that URL...
...explorer takes care of deployment of your task, downloading the dll from the server location to the client machine and registering it wih the .NET interop. What I took from all this is, that as a desktop/engine developer writing these custom tasks isn't going to be a big jump for me into having to know all sorts of stuff about web application development... we'll see.
I'm excited about the possibility of writing custom tasks not just to provide 'tool/command' like fucntionality, but to customize the explorer application (layer ordering/on-off, TOC simplification, etc.). This is hard to do in Google Earth.
Common Operating Picture Tech Session
Skipped out of the .NET track to see a session on pretty cool data integration application bringing in real-time from multiple location sources and viewing it. The app was an ESRI employee tracker, and it searched for last known locationn of employee based on flight info in the esri travel database, badge id swipe on esri campus, even vpn authentication activity linked to IP address. Cool stuff, but technical details from the ESRI Impl. Services presenter went way over my head.
Learned about a new ArcToolbox tool coming in 9.2 called 'Generate Map Server Cache'... Tool creates tiled raster maps from an .mxd, you choose tiling resolution and number of scale ranges. These get served up by ArcGIS Server. Pretty powerful, but I wondered about dynamic labeling, specifically duplicate labels and 'edge' effects. I talked with Brian about this and he wondered the same thing. I guess that there'll always be this challenge.
Cartograpy Objects Technical Session
Mike and Craig (former colleagues of mine) presented a really informative overview of the cartographic subsystems in ArcGIS. As Craig said, there's a lot in this area because cartography in ArcObjects-speak is inclusive of everything from layers, rendering, symbols, elements, maps, and pages, to displays and display transformations, to export and printing.
Michael pointed out that it helps to know about about Windows GDI if you're going to get deep into displays and drawing with ArcObjects.
I was happy to see the Multivariate Renderer sample that I wrote is still a useful learning tool for ArcObjects developers. I'd still like to see something like this be core ArcGIS functionality. Something to look forward to on the horizon I guess.
Talk to you soon,
-Cory
posted by Cory at 9:04 AM

No comments: