I recently had a chance to sit down with Jayant Sai of ESRI to discuss their new Dojo-based GIS JavaScript API.
DS: Let's start at the beginning. What is ESRI?
JS: ESRI(r) leads the international geographic information system (GIS) software industry with innovative solutions that help more than 300,000 organizations create, manage, visualize, and analyze information. Our clients use ArcGIS(r) software to unlock the spatial component of their data and quickly make effective decisions. ArcGIS is an integrated family of products for use in desktops, servers, or custom applications; in the field; or over the Web. www.esri.com
DS: What problem or problems are you trying to solve for your customers?
JS: Our customers build web sites that expose maps, data, and geographic analysis. We want their development process to be as easy as possible while giving the end user a rich and interactive application. By using Dojo we are leveraging a simple framework for building rich Internet applications. This allows us to focus on creating a simple API for the ESRI server software ArcGIS Server.
DS: How did you first learn about Dojo, and how does Dojo help you accomplish your goals?
JS: We first learned about Dojo when it was at 0.3. We did not evaluate it at the time for our project, but knew of the option. For the ArcGIS JavaScript API project we chose Dojo since it makes our work and our users' work easier.
DS: How did you pick the Dojo Toolkit? What other toolkits did you consider?
JS: During the initial implementation process, we evaluated Prototype/Scriptaculous, YUI and pondered writing a home grown solution. But the fact that Dojo had support for vector graphics (gfx), a build system (for compression and cross domain deployment) and the wide range of widgets (dijits) made it a winner.
DS: What is your favorite thing about working with Dojo?
GFX & Dijit templating.
DS: How has the Dojo Toolkit helped your business? (faster time to market, let you focus on core competencies, etc.?)
The fact that Dojo fixes browser incompatibilities, including handling graphics based on browser, it definitely helps us concentrate on working on the mapping functionality of the API. We like the fact that our users can use the whole Dojo toolkit to build their next generation web 2.0 mapping application, or use just our mapping components, without really getting into the hardcore JavaScript pieces of the toolkit.
DS: If someone was evaluating Ajax development options today for building a web application, what advice would you give them?
Don't reinvent the wheel. Check out Dojo or other toolkits.
DS: How can Dojo developers best make use of your API?
The ArcGIS JavaScript API, as the name suggests is an API. The API is hosted on our servers and edge cached, so users can access and create mapping applications from anywhere in the world.
DS: Thanks Jayant for taking the time to tell us about your work. Here are some screenshots of the API in action:
- Site Selection and Trade Analysis Area
- Surface Profile
- Map Routing
From Dojo.