ESRI Developer Summit Meetup

OK, as promised, we are going to have yet another meetup this year at the ESRI Developer Summit. If you are going and want to hang out and talk shop, feel free to drop on by. You don’t need to be a blogger, developer or even at the Summit to attend. Just drop by and say hello and feel free to talk about anything you wish.

When: Monday 3/17 @ 6:30
Where: Wyndham Lobby Bar
Who: Anyone who wants to talk ESRI or GIS
What: Dinner/Drinks/Talking

I can think of two big things to talk about.

ArcGIS Server REST API for 9.2

The ArcGIS Server RESTful API will come out at 9.3, but what about those who need it now? Well Dave Bouwman has blogged about its release. Because we all love demos, here is the link to the ArcGIS Server RESTful API.

http://65.101.234.201/rest/

Notice that it is running on OpenLayers. Think about what you are seeing there. You’ve got the ArcDeveloper.net RESTful API to adding features to the map. The source data is stored in ArcSDE in SQL Server, and is accessed via the ArcGIS Server SOAP API. As Dave Bouwman says, “lean and mean, but works quite nicely with OpenLayers and VE”. That is exactly what many of us have been asking for over the last year.


Finally, getting RESTful with ArcGIS Server

ArcGIS 9.2 Service Pack 5

ArcGIS 9.2 Service Pack 5 will be available by the end of March. This appears to be a “true” service pack release and not a feature release. I’m not sure I’ll bother installing it on our ArcGIS Server implementations, but we’ll deploy on all our ArcGIS Desktop seats. One change did catch my eye.

Launching maps and globes from web pages (new in SP5)

  • Service Pack 5 includes a fix that enables you to launch maps (MXDs), globes (3DDs) and scenes (SXDs) by clicking on them in web pages. Previously you had to right-click the files and save them to a folder, and then launch them from the folder. With this fix, it is much easier to launch maps and globes containing internet content, such as those on the ArcGIS Online beta website: http://arcgisonline.esri.com/index.cfm?fa=access.desktop
    This enhancement provides a useful way to make map services that you are serving with ArcIMS or ArcGIS Server easily accessible to other ArcGIS Desktop users, because you can simply include a map or globe referencing your service(s) on a web page.
    Layer files can also be added to web pages for download, but ArcGIS Desktop 9.2 users have to right-click on a layer file on a web page and save it to a folder in order to access it. In the ArcGIS Desktop 9.3 release we are adding full support for adding layer files from web pages to your maps and globes simply by clicking on them.

U.S. Navy to require “open GIS”

A reader forwarded me this article from Federal Computer Week about the Navy looking at only accepting “systems based on open technologies and standards”.

Vice Adm. Mark Edwards, deputy chief of naval operations for communications, broke the news March 5 to a Navy IT Day audience in Vienna, Va., sponsored by AFCEA International. “The days of proprietary technology must come to an end,” he said. “We will no longer accept systems that couple hardware, software and data.”

By using an open network architecture, the Navy could rapidly upgrade its capabilities and handle increases for demand, Edwards said. “Above all, we must break the stovepipes of data so that we can share information across domains,” he said.

Now he is talking in general (no pun intended) here, but the point is clear. If you want to do business with the Navy, including GIS, you’ll need to support open standards. I’m guessing this means using WMS with your ArcIMS and ArcGIS Server implementations and not using Personal Geodatabases anymore. I’m pretty sure loading the data into SQL Server 2008 Spatial and then connecting to it from ArcMap is acceptable, but we are going to start having to change the way we implement GIS for our Navy clients.

Should be interesting to see how quickly this gets implemented.


Navy personnel excited about leaving “stovepipe GIS”

How to create a “tiled map” from scratch

Blog reader Mike emailed this link to me and said that he thought it was well written. I agree, I think if you’ve been having difficulty understanding how map tiles work, this is a great primer to grasping the concepts. Map tiles are critical to getting performance on your web mapping applications and if you aren’t using them, you should.

ArcGIS Server REST API Documentation

ESRI’s ArcGIS Server RESTful API docs are now available on the web. Now I really want the ArcGIS Server 9.3 Beta to ship tomorrow.

HT: ROK Technologies ESRI Developer Blog

Update: Looks like this wasn’t supposed to be out in the public as ESRI pulled it down for some reason.

ArcGIS Server Javascript API Example

ESRI has posted an example of the Javascript API on their blog:

Today, we just want to talk a bit about the new ArcGIS JavaScript and REST APIs. We built this new JavaScript API because many of you have asked for a simple way to share your GIS data and tools over the internet. Here is an example built on top of the ArcGIS JavaScript API.

Of course you’ll probably “view source” on the page to see what is up as I did. I see they used the Google Chart API for the charting as was noted on their blog page. A simple application for sure, but definitely a step in the right direction from what we are used to using on the ArcGIS Server platform.


Taking orders for HTTP Goodness Thongs for the DevSummit

More: Digging deeper into the example we can see the url to the map layer: SuperTuesdaySample with all its metadata and supported operations. If you click on query you see an HTML form. Pretty slick. If you click on the breadcrumbs at the top you can see the service description as well as its supported interfaces (REST or SOAP) and supported operations (Export Map Image, identify, find and Generate KML. All well thought out and very well done. Alas the help and the API Reference links do not work at the top of the page, but I really like what I see here. We’ll have to wait until they show us more, but I am impressed.

Update 2: Sean appears to have been doing the same thing as me, but as always he sounds smarter when talking about it. Check his thoughts out.

Bringing Open Source GIS into an “ESRI Shop”

I don’t like the term “ESRI Shop”. Both open source developers and ESRI developers use it as an excuse one way or another. Just because you are running ArcMap or ArcGIS Server, doesn’t mean that you can’t explore open source GIS software and in fact you might be surprised how it makes your ESRI ArcGIS software even better.

A couple months ago, one of my clients asked me how they could bring KML into their ArcGIS Desktop maps. We’ve been through this before so I won’t detail my feelings on the subject, but ArcMap cannot read KML without some help. We looked at a couple different solutions and FeatureServer seemed to be a perfect fit for what they wanted. They’ve got people digitizing points/lines/polygons in Google Earth pro and getting that data into their SDE databases needed to be easier. Then another client wanted to digitize polygons inside ArcGIS Server, but they couldn’t afford a license for ArcGIS Server. Again FeatureServer seemed to be a great choice, coupled with OpenLayers. The idea seemed to come together at that point. Use OpenLayers to allow people to create and use FeatureServer as the translator to move the data between KML, GML, PostGIS and eventually ArcSDE. The idea is to let folks use the tools they are most comfortable with, whether it be ArcMap, Google Earth, or any OGC complaint application.

Now the concept sounded perfect but we ran into some problems. First off ArcMap still couldn’t read KML without help (and I could not be assured that an extension would be installed on ever workstation) so GML sounded like the perfect solution. ArcGIS Desktop can read “GML Simple Features”, but what FeatureServer was giving out was more complicated. You could read the GML from FeatureServer with Data Interop extension, but without it, ArcMap gave an error. Thanks to Christopher Schmidt, we were able figure out the schema for the ArcGIS GML “format” and any data that was digitized in OpenLayers could be downloaded as GML and viewed in ArcMap. That was huge because now you can view any features in OpenLayers, Google Earth and ArcMap which is exactly what they wanted.

What is really important to understand here is this was all done with open source software (FeatureServer, OpenLayers, PostGIS) and was developed quicker than an ArcGIS Server application could have been done. Christopher was obviously a huge help and the prototype couldn’t have been developed without him figuring out how to get FeatureServer to interop with ArcGIS. There is no overhead involved and no licensing fees/maintenance that needs to be paid.

Having a group of GIS techs digitizing PDF maps that people have marked up is not cost effective for anyone. Having people remotely digitize features and be able to work with them in PostGIS, Google Earth, ArcGIS and just about any OGC complaint application is very powerful. It really comes down to using open source to make everyones job easier and doing much more than you could before with much less money. When you take out the maintenance and the licensing of server software, you can focus your money directly on the problem and solution.

The next step is to get FeatureServer to write directly to ArcSDE (or as we now call it ArcGIS Server Enterprise). That way there is no importing of GML (or any other data layers) into your ESRI workflows. FeatureServer takes care of everything and you just interact with you spatial database like you always have. I’ve heard that OGR support for ArcSDE write is on its way so that will open FeatureServer up to many more folks.

That brings up a huge issues for many folks. How do I get my ArcSDE datasets out to the public so they can use them? Imagine FeatureServer just sitting there offering up KML, GML, WFS, GeoJSON, OpenStreetMap .OSM for all to use. I love this approach to getting data in and out of ArcSDE; quick, easy, cheap and it just works.

BRILLIANT!

ESRI Podcast – 2008 Developer Summit: Building Mash-ups Using the ArcGIS Server JavaScript API

OK here is the other part of the ArcGIS Server 9.3 release that most of us will be interested in; the Javascript API. Jeremy Bartley and Jayant Sai talk a little about the Javascript API in their podcast. Much like the RESTful API Podcast, there isn’t much meat here, but at least you can get an overview of what the Javascript APIs will be. Remember from the RESTful API Podcast, there will be Javascript Extenters for Virtual Earth or Google Maps and ESRI own Javascript API. One thing that was refreshing to here ESRI say is that the general public isn’t interested in toolbars and all the heavy WebADF junk, but lightweight modern mapping sites. Could we be ready to turn the corner here with ArcGIS Server development?


Can you say API/SDK/ADF/AJAX/JSON?

Dave Bouwman releases the ArcGIS Server Virtual Earth Tile Server

Dave Bouwman has cleaned up his AGS Virtual Earth Tile Server and has posted the code.

  • HttpHandler (.ashx)that responds to Tile requests from Virtual Earth
  • Supports multiple layers/map services through the same handler
  • ArcGIS Server Tile Provider uses the AGS SOAP API (fast!)
  • Projects the data – can be used with any ArcGIS Server map service
  • Extensible design allows for additional Tile Providers – i.e. ArcIMS, Image Server
  • Extensible design allows for additional storage providers – i.e. Amazon S3, DBMS
  • Easy to use – just edit the web.config file

Dave hopes to add providers for both WMS and ArcIMS services. Some of the history behind why this project was developed can be found in a blog post from a couple weeks ago.

This is why a RESTful API is so important to development of ArcGIS Server. Rather than being tied down to the WebADF, you can start using ArcGIS Server in ways that we haven’t before. Just because you are the ESRI Server Stack shouldn’t limit you to using only the ESRI ADFs. We’ll be seeing more about this in the next few weeks running up to the DevSummit from many folks as we start getting organized with ESRI ArcGIS Server community development. If you use .NET with ArcGIS Server, get involved with ArcDeveloper.net.