March 12, 2008

ArcGIS Server vs. Mapserver/PostGIS

I know that ArcGIS server is supposed to be a true example of SaaS and the Mapserver/PostGIS example I have given is likely considerd something else but I would like to share an experience on a project that spans both worlds. About 5 years ago the company that I was working for at the time got a contract to build an online database/spatial data managment system for a Canadian Government Agency. Originally they required a proof of concept so we decided to build this thing using open source technologies. We very quickly found that UMN Mapserver combined with PostGIS/PostgreSQL and a couple of other nearly free software titles would do everything we needed. By the time we were finished we had a highly interactive tool that gave the user access to such things as dynamic cross sections, dynamic drill logs including down hole temperatures, the ability to upload photos and add them as points on the map and a dynamic 3D visualization tool. The grand total for software expenses was under $2000 CDN.

Anyway, to make a long story even longer, about a year and a half ago the client decided that they wanted to host the application themselves. As they are completely an ESRI shop we were contracted again to migrate the application to ArcIMS and ArcGIS Server. This task did not come without several headaches that's for sure but we managed to get much of the application migrated. The one thing that was impossible was the ability to migrate the 3D visualization tool. Apparently ArcGIS Server won't allow you to consume their ArcScene objects without a thick client such as ArcGIS Explorer or full blown ArcScene. The client did not want their clients to download any software for this purpose so we ended up going with the much less versitile solution of creating a number of static views as jpeg files. This also required some additional programming to create a viewer for accessing the images. Needless to say this required an adjustment to the scope of the project and some creative negotiation with our client.

So why am I telling you all this; keeping in mind that the software we were using with the original application cost about $300 to generate the 3D views. Why is it that ESRI couldn't provide this functionality in thier much more expensive software. Please don't get the idea that I am anti ESRI because I think ArcGIS Server is a phenominal product but I don't understand why, with the advent of such technologies as Google Earth and Microsofts Virtual Earth, ESRI didn't throw in the ability to view snapshots of the 3D scenes without a thick client.

As the project manager for this application I made an official improvement request to ESRI but I haven't heard whether this improvement has been made as of yet. I understand that ESRI as the largest supplier of GIS software can't include everything into thier applications but I just thought it was a no brainer given my comments about virtual earth technology and the web.

Please let me know what you think about this especially if you are involved in creating rich web applications for your clients or employers.



Gabriel A said...

ArcGIS have the wonders and the worst of GIS software. It sounds crazy that a software/system like ArcGIS can have in a same package very powerful and sophisticate tools joined with tremendously bad implementations like "not all spatial operations are supported for GDB" or "this operation can be performed for shapefiles, but not for GBD" or the other for coverages but not for GBD and so on. Why I need different tools for performing same operations in different datastores? ( Hey ESRI, polymorphism was invented some years before!!). Dataset Management also became so complicate because a lot of operation that have to be implemented at server side like spatial constraints (they call new topology) are implemented at client side (ridiculous). I know, since ArcInfo 3.0 modularization was never a Esri strong and my experience with ESRI software said, they do not know how to work in complex programming environment, they do not know to much about modularization and they do not know how coordinate their programming teams as other OS projects do know.

Gregory Kramida said...

I have to agree with Gabriel 200%. We have been developing a massive application mounted on ESRI for the past two years, which was not my choosing as a GIS server platform. Migration to 10.1 was a major headache. It seems like the ESRI development team cannot live without a myriad useless components that should be integrated into the main app and come out-of-the box, as soon as they got rid of (the necessity for) one (namely, ArcSDE), they added another (namely, IIS Adaptor). They should receive a medal for creativity of the inexplicable ways in which their components fail to work with each other... I'm glad the ordeal is over, although I have only a slight shimmer of hope we will start to migrate to open-source components in the future.

james said...

thanks for nice information about comparison of ArcGIS and Mapserver/PostGIS

Anonymous said...

And the conclusion is: dump ESRI for free to use PostGIS and other geospatial-oriented open sources :)
Ah... but corporates are so used to salesmen visiting their office, instead of spending time searching for open sources.