[[ This is a content summary only. Visit my website for full links, other content, and more! ]]
Related tags: Desktop [+], Explorer [+], Server [+]
For all those who can’t resist installing the latest service pack for ArcGIS, here it is:
ArcGIS 9.2 Service Pack 5
ArcSDE 9.2 Service Pack 5
ArcIMS 9.2 Service Pack 5
ArcGIS Image Server Service Pack 5
In case you can’t remember if you care or not, check out the Service Pack 5 announcement.
Freakin’ sweet!
While the buzz at the DevSummit was for the REST API and the JavaScript API, the Flex API sure got noticed. Folks seemed disappointed that they missed the session on the Flex API. Well some bloggers have already been posting their thoughts on the Flex API and it is well received.
I’ve been telling folks I’ve got serious reservations about using any development environment created by “Adobe”, but this Flex API stuff is really compelling and worth a look.
ArcGIS Chefs have another service to cook with
Well I think most would agree, the 2008 DevSummit was one of the best. There was tons of new stuff to learn about, much more attendees, more ESRI staff, better layout of the conference (the Community Center was particularly good) and better session (and more of them). So what did I take away from the conference?
ArcGIS Platform
So underneath it all, what has changed. Well first ESRI has really focused on bug fixes. I know we’ve all heard this before, but I think the new crash reporting dialog will give better feedback to ESRI and internally they’ve caught many bugs that might not have been caught without the crash reporter. In addition ESRI is using Coverity to help uncover hidden bugs in the code (read some of these case studies, very interesting stuff). I was told that they found stuff that has been hidden for years in the code that would have caused problems, but for one reason or another never was discovered. I think it is safe to say the 9.3 code base will be as bug free as anything they’ve ever released (hold for joke) and given how short this beta period is I think they are confident that they’ve delivered on this.
The focus at 9.3 is stability, performance and security. Those are 3 areas I know have been a great concern for most ESRI users/developers and the examples that we were given between 9.2 and 9.3 showed great performance increases (I can’t comment on stability until I’ve worked with 9.3 for a while). The new security improvements aren’t revolutionary, but address the specific concerns users have had with the product (specifically check out the security presentation on EDN from the DevSummit for the details).
ArcGIS Server
Well there are tons of new "exciting" features with 9.3 as we’ve all heard. First of the REST API is the real deal. The REST API can server up tiles to Google Maps and Virtual Earth (assuming you use the "web Mercator" projection) and the ability to use ArcGIS Server with Yahoo! pipes really opens the possibilities of taking ArcGIS Server and moving it into areas that we’ve not been working in. Providing results from Geoprocessing is as easy as appending f=kmz to the URL (don’t you just love RESTful services?). The JavaScript API is based on Dojo so you’ve got some power in there to make some really interesting JavaScript applications. The Google Maps and Virtual Earth (2D and 3D support) extenders allow you to bring your ArcGIS Server services right into consumer mapping products. The JavaScript API is hosted by ESRI and in the Akamai cloud so it should be very stable anywhere in the world. We’ll be seeing a ton of new applications out there based on the JavaScript API in the next year, that I’m sure of.
Now don’t forget about the .NET Web ADF (didn’t hit any Java sessions this year). It is now what ESRI is calling a "hybrid" model meaning that there is both server and client side stuff going on (rather than the total server side stuff at 9.2). The key new feature is ASP.NET AJAX, but it is still very compatible with 9.2 projects (usually just change a line or two of code and your old projects should still work). The core controls are now scriptable with the ASP.NET AJAX libraries so you can do a ton more on the client than you did before. The JavaScript API in the Web ADF is totally different than the other one (the Server JavaScript API for use with RESTful) so your code may have to be customized between the two versions if you jump between the REST API and the Web ADF. The Task Framework is much improved and you can now build them using User Contols. In addition they are releasing tasks into the code gallery on the ESRI Resource Center for Server (I’ll talk more about the Resource Centers later) so you’ll be able to see what ESRI has done and create your own modifications. The documentation in the Resource Center is so much better than what was available in 9.3. The examples are great and the explanations are detailed and well written. The performance of the Web ADF at 9.3 has increased at least 100% if not more. If you ever blended two data sources (one tiled, one dynamic) you know that it takes the dynamic one time to match the tile scheme that the tile scheme already existing. Now each resource has its own tiling scheme and the layers load much faster. The Web ADF (and obviously the JavaScript API above) will be "uncoupled" from the ArcGIS Server release schedule. This means that you won’t have to wait years for new features to be implemented. Silverlight 2.0 support will probably happen way before 9.4 arrives which would have us all complaining down the road I’m sure. Dave Bouwman has a great write-up on the details of the .NET session so head over to his blog to read up on his thoughts.
ArcGIS Explorer
I’ve already posted on the new features in the 480 release due in May and the 600/700 release due by the end of the year in my Plenary session post, but I’ll list some of the new features in Explorer that caught my eye. First off 480 will increase performance (multi-threaded), direct connect to SDE, GPX support, GeoRSS support and improved task frameworks and popups (the bubbles). Build 600 has the new Microsoft "ribbon" interface and looks great. From a usability standpoint, the information you are working with gets presented right to you and not hidden by interfaces. You will also be able to finally view the maps in 2D mode. I think this will be a boon to organizations who are using AGX as a decision making tool. Ease of use goes a long way. The "enhanced" ArcGIS Explorer SDK will allow you to embed AGX inside your applications. I asked how ESRI would charge for this SDK and they are still thinking about it (will the SDK be free and the deployments cost, will the SDK cost and deployments be free, or will everything be free).
ESRI Resource Centers
New at 9.3 is the ESRI Resource Centers. You’ve already been looking at the first one for quite some time (the ArcGIS Explorer Resource Center) and the ones for ArcGIS Server, Desktop, Engine, Image Server, Mobile, IMS and Geodatabase are currently available for those in the 9.3 beta program. These are help centers where you can get support, online help, code samples, interactive SDKs and other resources that you can use with developing (or even using) the ArcGIS Platform. The forums are due to be re-launched based on the Beta forums (which means you’ll be able to subscribe to a forum topic via RSS). There will be many new blogs available from teams that haven’t blogged yet and there *might* be community aspects introduced as well. How this all interacts with the EDN site I have no idea.
Issues?
The one thing that scares me and Dave Bouwman did bring it up at the closing session is overselling what you can do with the new REST API and JavaScript API. Have sales staff running around that you can create "rich" JavaScript applications "consuming" ArcGIS Server services using only 12 lines of code is going to put many of us in a bind. JavaScript is easy to pick up, but that doesn’t mean you’ll be adding complex geoprocessing to your Google Maps mashup with one line. The speed that you can develop has increased, but the complexity will still be there. The JavaScript API will increase your productivity, no doubt. But telling everyone all you need is 12 lines of code will result in disappointment.
What now?
Well I’ve got both ArcGIS Server and ArcGIS Desktop installed on my laptop and they seem very stable. Moving forward I think we’ll jump with both feet into the RESTful API and the JavaScript APIs. I think users will want to get their services published via the REST API as soon as possible so Google can start indexing them. What a great way for organizations who want to share their data with the community, just publish and let Google index your services. The ArcGIS Services Explorer is going to be a great tool to learn what is available out there. I had quite a few ArcIMS developers say that they can finally feel comfortable working with ArcGIS Server. The .NET and Java Web ADFs were too much for them and they were usually used to working with simple HTML pages. Compare the speed of JSON vs the speed of sending XML (AXL) requests to the server and see how fast you get a response. It really does highlight why the community at large has really moved to JSON.
So go get on the 9.3 beta, but you’ve got to hurry as 9.3 RTM could happen as early as "June".
I don’t think there is anything wrong swinging by the office on the way home from the Developer Summit to pick up the 9.3 Beta disks to install tonight while I watch UCLA destroy Mississippi Valley State. My wife just doesn’t understand me but I’m happy with who I am.
Lets see, I have my .NET Sombrero beer hat and cigar. I’m ready to install the ArcGIS Beta
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.
If 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.
I like that ESRI has started to focus on getting ArcIMS developers ready for their eventual move to ArcGIS Server. There is a podcast up describing the “ArcGIS Server for ArcIMS Developers” session at the Developer Summit.
ESRI has no ArcIMS technical sessions planned for the 2008 Dev Summit so everyone should take that as a sign as the future of ArcIMS. Time to migrate folks.
MechaArcGIS consoling ArcIMS on its fate
We’ve hit on this discussion before and with the Developer Summit coming up maybe it is a good time to think about the direction processors and their movement to multi-cores and 64-bit processors.
At 9.3, ArcGIS Server Enterprise (or whatever ArcSDE is called these days) will move to 64-bit. This is a huge improvement as I would guess most new database deployments are built on 64-bit servers. But clearly ArcGIS Server itself is not going to be 64-bit at 9.3. When spec’ing out new servers, it is impossible not to go down the 64-bit route and servers going multi-core only in the next year ArcGIS Server will only get slower because it cannot take advantage of new technology. With the focus moving from clock speeds to cores, ArcGIS Server users run the risk of being stuck at a level of performance that is going to be unacceptable in the future.
I’ve been told that ArcGIS 10 will support multi-core/64-bit, but given that it probably won’t go final until at least late 2009/early 2010 that means we’ll be running into trouble way before we can even deploy beta version of ArcGIS 10. But is this really a concern for users? Generally speaking, most folks I’ve talked to don’t seem to really be bothered by this and maybe that is why ESRI is waiting until v10 to ship multi-core support.
Is the lack of 64-bit ArcGIS Server going to impact your business moving forward?
Moony only runs 64-bit servers, do you?
I’m not sure why this “blog” post is getting much traction. I see no reference to where they got that information, I see no information about what this API is going to be (you can already skin AGX). All I see is ESRI Marketing sending a small email to Directions Magazine and they posting it without giving thought to what they are doing. I had thought the whole point of Directions Magazine was that they’ll have higher standards than us bloggers. But APB has really fallen off in the past 6 months to the point it only appears that they post press releases. I remember when APB used to break news on their own.
Where are the standards over there Joe?
Updated: See below, Joe assures us they are as dedicated as ever. Good enough for me.
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.
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 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: [arcgisonline.esri.com]
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.
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”
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.
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.
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.
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!
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 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.
I’m sure this is just a coincidence, but ESRI actually posted a discussion of the REST API for ArcGIS Server. In addition they hit on the three Javascript APIs that they will also release with the REST API; ESRI Javascript API using Dojo, Extender Javascript Library for Google Maps and Extender Javascript Library for Virtual Earth. There isn’t too much depth here but at least we can get an idea where they are going with REST and ArcGIS Server 9.3.
Being RESTful and listing to ESRI Podcast
Thanks Rachel
So we all hate at least parts of the WebADF but complaining about it won’t do anything. Dave says it is time for us to do something about it. I agree, bitching about software is therapeutic, but it doesn’t help any of us get our work done. Dave, Doron and Matt have all blogged about where we should be thinking of going on this.
Dave thinks we can create our own REST API before ESRI gets around to releasing their own API (sorry Sean, I have to use API here given the context).
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.
I like the simplicity of this. Use existing work such as FeatureServer and add back into that community and grow our own ArcGIS Server community. Matt goes one step further and outlines what this RESTful interface would look like.
So what is the next step. We can wait until the DevSummit to see what ESRI has cooked up with their RESTful attempt but I know many people are so frustrated waiting at least this long for even a peak at it we might as we create our own. It backs into where I was talking about before, long lead times with ESRI Server software puts implementors in bad spots. Still I think we should wait the month and a half to see what they’ve come up with and it makes sense to have a meetup at the DevSummit to talk about what we want to do moving forward. We can also have an IRC channel running for those who want to take part in the discussion, but can’t make it to Palm Springs. I just want to develop ArcGIS Server applications using Javascript, don’t you?
Sound like a plan?
RESTful ArcGIS is a goal we can all enjoy
UPDATE : Matt says that I should know that ESRI will fail and we should forge ahead ourselves. Frankly I’ve not seen a thing about the ESRI REST API so I guess he is probably right. They can’t even give us a taste of the thing so as far as we should be concerned it doesn’t exist. He’s got no argument from me. Lets move forward on this then. Anyone game other than Dave, Matt, Doron and me want to step up?
The ArcGIS Explorer team has released the update to build 440 that addresses some of the issues that cropped up:
- Fixes problems on startup that have occurred with certain graphics cards and drivers.
- Fixes symbol display issues that have occurred with certain graphics cards and drivers.
- Resolves a problem with vector lines flickering when the globe is tilted.
The ArcGIS Explorer team has really been working hard and it shows. If you can do this with ArcGIS Explorer, why can’t you do it with ArcGIS Desktop? I think everyone would like smaller incremental releases.
Doron Yaacoby writes that he’s absolutely frustrated with ESRI’s Web ADF.
As I’ve said before, this is one horrific development platform. I’ve started to seriously think about coding a replacement that will work against ArcObjects (at least something that will satisfy my team’s needs), but it would take a lot of time which we currently do not posses. One day, though, one day.
I think most of us have felt this way. He had earlier said this about the ADF:
…the API is riddled with bad design choices and bugs. Weird exceptions get thrown. You find out that there are 5 different classes that are called Converter in this API, in 5 different namespaces, which in some situations can definitely be used together. Documentation for most methods is something like: Map.GetFunctionalities - “Returns the functionalities of the map.” Oh really? Now I couldn’t guess that on my own. I should mention that since the initial release the documentation has improved a lot, but it is still no paradise. Recent documentation for this method (added since Service Pack 2, if I am not mistaken), explains that it returns a collection of IMapFunctionality. So why, why oh why, does this method has a return value of IEnumerable? This is a .net 2.0 only library, for pit’s sake, they can use generics. And they do, in many other places. Here, they don’t. This kind of API inconsistency can drive a man insane, I tell you.
The WebADF which was supposed to help ArcGIS Server developers ends up being more of a hindrance to them. We looked at the ADF early on for our products but my lead developer threw up his hands and said no more and I spent a whole week trying to write a WebTask and it was virtually impossible to figure out. Sure it works great for ESRI’s example but when you try and extend beyond what they’ve documented you might as well be coding with your eyes closed.
I haven’t tried coding with the WebADF with a bucket on my head yet
This brings up a bigger issue with ESRI products lately. With long lead times between versions, we get so much more added functionality in each release. So rather than small jumps where feedback can help grow the product we are left with frameworks being dumped on us and we have to figure it out because of poor documentation. Sure 9.3 is supposed to fix all this, but 9.2 has been out since November 2006 and if 9.3 is released to beta right before the Dev Summit how much do you want to bet that the final comes out near November 2008, almost 2 years later. So in the mean time, developers such as me get so damn frustrated working with ArcGIS Server WebADF that we toss it aside. And don’t get me started on ArcGIS Server 64bit.
As Doron says:
For the amount of money an ArcGIS Server license costs, a .NET developer like me could very well expect a decent .NET API to work with. The Web ADF is a .NET API, but it is hardly as powerful as ArcObjects are, nor is it any kind of decent.
Could all this be why so many ArcGIS Server developers I know are looking at SharpMap?