The Closing Q&A

Yikes – I just saw this draft from yesterday that I didn’t get posted so pardon the untimeliness of it.

The closing Q&A session was over lunch and was pretty calm. A couple issues were raised that I thought I would mention.

VB6 will not be supported at ArcGIS 9.4 and you should really move to .NET.

The File Geodatabase SDK (or whatever it will be called) has been sidelined and they still need to figure out what it will be. The simple solution everyone would like is for them to just work with the GDAL team and get something written into GDAL/OGR (they did at least mention GDAL on stage). I’m just not sure what the problem is on this and why they don’t want greater use of the File Geodatabase (could be why I’m a consultant and they make money selling software).

Dave Bouwman asked them to stop overselling ArcGIS Server. His comment was well received by everyone out there and those on stage all agreed they need to do a better job giving a realistic picture of what it can do and how quickly you can deploy applications.

There was some worry about the future of ArcIMS. Of course the Web ADF works with IMS, but the picture is pretty clear that you need to start seriously working at migrating to ArcGIS Server. There were quite a bit of ArcIMS folks looking at the RESTful API and the JavaScript API. There is a natural progression from AXL to JSON I believe and being able to see the JSON will better help them understand how it all works. The point is though that you probably need to move on as no new features will be incorporated into ArcIMS.

Bart Kool Aid

It was the last chance to enjoy an ESRI Squishee

2008 ESRI Developer Summit Day 2

My laptop seems to have died and I can’t get it to boot up at all. I’ll try and get my notes figured out when I get back to the office, but you can read some blog posts from Day 2 of the Developer Summit. I’m sure we’ll see more come online tomorrow when the bloggers recover from a late night out in Palm Springs. Some reaction to the Dev Summit from other bloggers is below:
Mmmm’ Kooool-Aid! DevSummit With the Goggles On

Building Mashups Using The ArcGIS JavaScript API’s At The ESRI Developer Summit 2008

[ArcGIS Code Challenge… Thanks Everyone! (or where everyone who meets Dave now knows that they can ask him to buy them a beer)

ArcGIS Server .NET ADF Session

2008 ESRI Developer Summit Plenary

Jim McKinney opened the Plenary by introducing Jack Dangermond to welcome everyone to the DevSummit. The DevSummit has gotten much bigger over the last 3 years. It had more than doubled since the first DevSummit. The conference has changed from previous years. It is a longer a conference than before (pre-conference seminars). More sessions than before, presentations will be recorded and put up on EDN, larger community center and ESRI showcase (the server island was described as a continent). ESRI has also added the demo theaters to the showcase to augment the tech sessions. It definitely feels much larger than before. On top of it all, the plenary is much shorter (only 2 hours) than before so everyone can get right into tech sessions.

ESRI has committed to releasing service packs every quarter for 9.2. The future includes SP5 for 9.2 out soon and 9.3 in “June” (or before the User Conference) and 9.4 should arrive in “early” 2009.

ArcGIS Server

Ismael Chivite, the ArcGIS Server product manager, lead the talk on ArcGIS Server. The tag line that ESRI has been using is “Making GIS Knowledge Available To Anyone…”. This aligns with what was send at the FedUC and the BPC. Putting GIS into consumer clients (Google Maps, Google Earth, Virtual Earth) is clearly a huge change for ESRI. ArcGIS Server 9.3 performance is improved because of improved caching workflows (partial cache and on demand cache). This means you don’t need to create map tiles for the world, but pick areas you feel are important. The areas that are not tiled, can be created on demand as users view the world. The “simple” javascript API will speed development over “traditional” .NET or Java ADFs. Security can now be managed from within the Server Manager on each service. Much like the ArcGIS Explorer resource center that everyone can see, there will be a detailed ArcGIS Server 9.3 resource center (only available for Beta users at this point) that will aggregate the documentation and other documents in one place. ESRI is committed to delivering more code samples and web tasks for developers to use. (I can confirm that there are more samples available than I’ve ever seen for an ESRI release)

Web ADFs (.NET and Java)

Rex Hansen demonstrated how you can quickly take code samples out of the Resource Center and create WebADF and ASP.NET AJAX applications quickly and easily. The sample Rex demonstrated was simple and valuable which is definitely something that has been missing on ESRI samples from before. Rex showed how you can quickly take the ESRI sample and create a Sharepoint Web part using your own data. Hopefully this will improve usability of creating quick WebADF applications that leverage Microsoft development tools.

Rex apparently lost his mind and started talking about Java and AGS 9.3. The Java example was very similar in the sense that the code was simple and any Java developer should be able to customize it to work with their own data and projects. Rex looked pretty familiar with Eclipse so maybe he’s been cheating on us .NET folks.

Javascript API

The ArcGIS Javascript API is probably the biggest new feature of ArcGIS Server at 9.3. Now instead of being limited to .NET or Java, you can now pick a simple Javascript API to publish to ESRI’s Javascript API, or Virtual Earth and Google Maps.

Jeremy Bartley demonstrated the new Javascript API by visiting the Javascript API section of the ArcGIS Resource Center. Javascript API resource center allows you to interactively explore the API. Much like how Google has described the Google Maps API, ESRI has really taken the time to explain their Javascript API (Now I’m sure it isn’t as detailed at Google’s Docs, but the change from previous ESRI documentation is very noticeable.) The Javascript API reference is clean and easy to use and there are even plans for a “community” section where developers will be able to upload their own code or tricks that they have for the Javascript API (this will also be available for the .NET and Java sections as well). The speed that you can add ArcGIS Server services to your maps is just slick. One line of Javascript code and a url to the service and you are running. Many have already browsed the Services Explorer on the demos that ESRI has posted and have been able to see the capabilities of the service.

Jeremy also demonstrated the Google Maps and Virtual Earth extenders. Seeing ArcGIS Server being leveraged in Google Maps really gives developers the ability to take classic GIS analysis and put it in a context that “ordinary” users can work with. I will say when Jeremy was done, the crowd really gave ESRI a good cheer. I think that proves that this Javascript API is going to be used quite a bit moving forward. One point about the Javascript API’s is that no development or deployment license is required on the Web server hosting your application.

ArcGIS Mobile

Developers I’ve talked with this week have really been interested in what ESRI has been doing with ESRI Mobile solutions. What is interesting at 9.3 is that ESRI includes ArcSDE SQL Express with ArcGIS Engine. You can do both one and two way replication with ArcGIS Server. ArcGIS Mobile integrates deeply with Visual Studio and enables quick development and deployment. Being able to develop a mobile application on Windows Mobile and Smartphone with a couple lines of code should increase Mobile usage among ESRI Developers.

ArcGIS Desktop/Engine

Euan Cameron talked about changes to ArcGIS Engine 9.3. The biggest news I think was the ability to include SQL Server Express Support with deployments. At 9.3 ESRI increased the amount of documentation and code. Desktop now allows the ability to have “Z Aware” editing, HTML popup windows (like what you are seeing with ArcGIS Explorer), more online support content and VBA 6.5 (thus Vista and Office integration).

Bernie Szukalski started to demo some 9.3 enhancements (the new “left hand tool”), and ArcGIS Desktop 9.3 crashed. We got to see the error detection and debugging tools. Crash dumps created automatically and ESRI will use these to help track down crashes. This should result in Service Packs addressing problems quicker than before.

ArcGIS Explorer

Now the real reason that Bernie Szukalski was up on stage (no he wasn’t there to crash ArcGIS Desktop) was to demonstrated ArcGIS Explorer The future releases of ArcGIS Explorer include 480 will be released in May and followed by releases 600 and 700 by the end of th year. Bernie was demonstrating how you can include ArcGIS Server Globe Services, ArcIMS Services, WMS Services, local imagery, file geodatabases and KML. The new icon symbols really look great and very sharp (and will be available with ArcGIS 9.3 Desktop for use in any ArcMap or ArcGIS Server production). Bernie even when to the Google 3D Warehouse to grab a KMZ of a 3D building. Bernie also demonstrated how you can even embed YouTube videos right into the info bubbles. Any HTML content can be used, there is no limits so you can put any web content into ArcGIS Explorer.

ArcGIS Explorer 480 will increase performance (multi-threaded), Direct Connect to SDE!!!!!, GPX support, GeoRSS, improved task framework and popups and ability to load AGX in your web browser. The future moving forward includes a new user interface, integrated 2D and 3D display, markup and collaboration and a Map Control to embed Explorer objects. You’ll be able to take the map display and use it in your applications.

ESRI demonstrated build 600 (which isn’t the next version) and it has the new “ribbon” interface that you’ll recognize from Microsoft Office. Now tasks aren’t hidden in the table of contents, but available quickly and easily. It really does look like a Microsoft Office application which should help with its adoption. The usability of build 600 is really striking compared to the existing ArcGIS Explorer builds and even Google Earth. Another key feature of build 600 is the ability to view maps in 2D. The enhanced Explorer SDK which will be available with either build 600 or 700. Embedding AGX inside your applications will be big for many developers.

Lastly Scott Morehouse discussed where the ArcGIS Platform is going. ESRI is at the “envisioning” stage with 9.4 so the User Conference will be where we’ll see what will be part of the release. It will build upon what happened in 9.2 and 9.3 so it shouldn’t rock the boat and will probably be a nice stable release. The release schedule of ArcGIS Explorer will be adopted by the Server and Desktop teams so we’ll be seeing more and quicker releases of software, rather than these big Service Packs and large jumps in technology we have been getting. There will be more support for standards, much improved Linux support, faster services in ArcGIS Server and more stability. 9.4 will also see Flex and Silverlight be part of the Server platform. Desktop will continue to be improved with stability/performance and new editing tools showing up. ArcGIS Online is now an integral part of ArcGIS and is not a separate product. More online documentation, best practices and code galleries will also begin to show up with 9.3 and on to 9.4.

Jim Barry described where EDN was heading including more blogs coming online in the next few months (Desktop Developer and Engine) as well as highlighting some of the improved online support tools at 9.3. Also the forums are being updated as part of the 9.3 beta program and when 9.3 is released, will replace the old forums that have existed for years.

That ended the plenary and we will move on to the “super sessions”.

2008 ESRI Developer Summit – Using the ArcGIS Server REST API

Jeremy Bartley and Keyur Shah (of http goodness fame) presented the first ArcGIS Server REST API session. ArcGIS Server can work with practically any client moving forward. To use the REST API, you publish your ArcGIS Server service like you’ve been doing (or reading about) for years. This means you can serve up simple maps like you would have done with ArcIMS, but also Geoprocessing services as well can be use (imagine having Google Maps work with a Geoprocessing service). The change from 9.2 is that rather than using SOAP to access the services, you can use use REST.

you want to get into what REST is go ahead and use Google to search. The simple explanation for those who don’t have time to research search is that everything is a URL, exchange standard formats (JSON, HTTP) using standard verbs, and every request asks a full question and every response includes the full answer. Just think of Keyur’s “http goodness” idea. So everything is a URL. This means that your resources can be accessed via URL and thus wget, curl, JavaScript, Python, Ruby, Perl, Java and .NET. I’ll put a link here to the presentation when it gets put up on EDN and you can see the detal that Keyur explains what REST is and how it applies to ArcGIS Server (or ArcIMS ) developers

Services formats you can use are html (the Services Explorer) JSON, KMZ, image, help, Layer file that you can add to ArcMap or ArcGlobe, ArcGIS Explorer documents, jsapi, Google Maps and Virtual Earth. The Server Explorer gives developers (or nosy GIS professionals) simple and instant access to Server Level Metadata. On every Server Explorer page, you will see a link to a help file that will help you understand what is going on. JSON will be used by the JavaScript libraries (or any programming language). There is also a “pretty JSON” feature that will return a more readable JSON (f=json&pretty=true) for debugging purposes.

ArcGIS 9.3 supports KML out of the box. Therefore you can build web pages that include links to KML content. Not only does it support KML/KMZ, but it also supports query results, geocode results, Geoprocessing task results and custom raster or vector results corresponding to selected layers from a map service. So you can pass the results from analysis performed in ArcGIS Server and offer them up in your webpages for users. Rather than export a KML/KMZ out of ArcMap and linking to that on your webpage, you would just make a REST call to the KMZ format on that mxd that you published on ArcGIS Server.

REST API Admin allows developers to clear the REST API Cache that gets created. If your add, delete or updates services, you’ll want to clear the cache. You can clear the cache by clicking on a button or have it clears periodically depending on your needs. REST API Security ties in with general ArcGIS Server Security policies so you won’t have to set anything different just to use the REST API.

Jeremy demonstrated how you want to set your correct projection in your MXD file before publishing (to match Google Maps or Virtual Earth). This of course is very simple, but you want to make sure it is set correctly if you want to match the web Mercator projection. ESRI and Microsoft/Google use different cache schemes, but ESRI has a tool that will convert your tile cache from the ESRI “format” to the Microsoft/Google tile format. This is only needed for 3D as ESRI handles the conversion automatically for the 2D. One nice function is the REST API support KML regions as well.

The simplicity that you can build applications via REST is clear. If you want to run a query, all you have to do is add a url and then call the url via JavaScript. So you pass the url to the query service with the coordinates you want to query and the RESTful server will pass back the results via another url to the browser. For those who have struggled with the .NET and Java WebADFs, this simplicity will be refreshing and I think we’ll see many developers come back into the web mapping fold because they can now work with ArcGIS Server services.

Jeremy also ran a Python demo to access the ArcGIS Server services via REST. If you aren’t a .NET or Java “guy” and want to use Ruby, you can now work within your favorite language. Heck, you like Yahoo! Pipes? Just add your RESTful URLs to Pipes and run the pipe to use the Yahoo! services with your ArcGIS Server services.

The freedom to use these RESTful services where you are comfortable, or where you client requires will stop the need to “sell” the need for installing .NET or Java on a server. Any “old” http server will be able to run these applications and there is definitely no reason to be afraid of ArcGIS Server anymore. As one ArcIMS developer told me, I finally see a reason to leave AXL and move to ArcGIS Server. The REST API is well thought out, very extensive and allows access to the power of ArcGIS Server in a “simple” html page.

ESRI Business Partner Conference Day 1

There really wasn’t that much going on yesterday other than a couple points Jack made on stage that will probably be built upon during the Dev Summit:

  1. Jack says Microsoft and Google are the key to collaborative GIS using ArcGIS Server as the back-end. The hope is ArcGIS will integrate with everything moving forward.
  2. ArcGIS 9.3 will be in everyone’s hands by June. That means that this will be a very sort beta period. Reading between the lines, this could mean that there are very few new features and this really will be a release that focuses on quality and documentation.
  3. As others mentioned at the FedUC, Jack talked about Open API support. Want to use OpenLayers with ArcGIS Server, no problem.
  4. The new Javascript API will increase production thousandfold. Now you can use the simple APIs to deploy quick and simple mapping websites and use the WebADF for the detailed heavy sites.
  5. Did you use AML with ArcPlot? 9.4 might add the ability to script map production.

Now there was much more, but we’ll leave that for the DevSummit where we’ll learn the details.

Off to the 2008 ESRI Business Partner Conference

BPC

I’ll be driving out from Tempe early tomorrow morning to the 2008 ESRI Business Partner Conference. I’m looking forward to meeting and talking with everyone. Feel free to email me if you want to hook up and get drinks or food (I’m staying at Hotel Zoso down the street). I’ll of course be staying over the week for the Developer Summit as well. Looks like the weather will be much colder than the nice warm days we’ve been having so make sure you pack accordingly (note: my definition of cold will probably be different than others).

Alas, our 9.3 beta didn’t show up before I left work today so I guess I’ll have to just watch, rather than participate. Oh and if you want something to read on the airplane on your way to Palm Springs, why not print out some of the slide shows before and bone up on your 9.3 knowlege.