Category: Developer

ArcGIS Developer Poll Results – The Visual Studio version winner is…

Of the individuals that participated, it’s clear that Visual Studio 2005 with .NET 2.0 is the most popular IDE for ArcObjects development today.  50% of the community are developing with this configuration.  The next most popular configuration is Visual Studio 2008 with .NET 3.5 at 32%.

A smaller percentage are taking advantage of the Visual Studio 2008 IDE improvements, but still building on top of the .NET 2.0 framework. This is surprising given that .NET 3.0 and 3.5 didn’t undergo any major architectural changes (still uses the .NET 2.0 CLR) and are considered an additive release.  We would be interested in hearing more feedback about this!

There are limitations, but another interesting fact was that very few (2%) of the respondents identified that they were using Visual Studio Express.  And of course, there are still a few (3%) implementing Visual Studio 6.0.

On that note, for all VB6 and VBA developers looking to transition to .NET, we are releasing a number blogs and videos on the migration process very soon.  Keep your eyes posted.  

In the mean time, let’s turn to the Java developers in the next poll and see what IDE they are using.

Thanks for the feedback!






Posted in Developer | Tagged , | Leave a comment

New Developer Community and Resource Survey


Developers:  If you are currently using Web 2.0 technologies to find people, resources and solutions as part of your day-to-day development activities, then you might be interested in this survey

Included are 10 questions on the following topics: 

  • Developer Resources
  • Social Media and Networking
  • Online Communities 
  • I know you are thinking “great, another ESRI survey”, but the data gathered here will help us make critical decisions about how we build and foster the online communities in the future.

    And if you are reading this, then that means you are part of these communities, so now is your chance to help direct their (and your) future.

    As always, your participation is valued and appreciated.

    EDN Team

    Posted in Developer | Tagged , , | Leave a comment

    ArcGIS Engine Java: Building a Multitemporal SDSS scenario viewer

    The Summer 2008 edition of ArcUser magazine includes an interesting article on Spatial Decision Support System (SDSS) developed for the GLOWA IMPETUS research program that provides an integrated approach to the efficient management of scarce water resources in West Africa. Using ArcGIS Engine Java, comprehensive ArcGIS functionalities and partly remote sensing analysis are incorporated in the SDSS. Specifically, the SDSS includes a GIS tool for visualization called  the ArcGISDoubleMapPanel, which allows users to evaluate two multitemporal layers in one panel. This kind of functionality is not yet available in most GIS software and SDSSs.

    The ArcGISDoubleMapPanel

    The ArcGISDoubleMapPanel tool provides thematic and non-thematic raster and vector maps that can contain either two attributes and one time slider or one attribute and two time sliders (to compare two different time frames). Figures 1 and 2 contain screen shots of the ArcGISDoubleMapPanel tool during preliminary development of the SDSS. Two PageLayoutBeans, which have toolbars with common GIS tools and time sliders (for visualizing multitemporal time steps), are used. By displaying two feature layers with different attributes that are thematically mapped, the user can intuitively compare these attributes. A Java slider (JSlider) component, located below the two maps, allows the user to view changes in the scenario over time. This slider has access to multitemporal feature layers and provides different time increments. Using a processor that accesses the specific time step of the layer, the two maps of the ArcGISDoubleMapPanel are updated (using refresh) during run time. Based on the classification applied to the map, layers change color in response to movement of the time slider. In Figure 2, the ArcGISDoubleMapPanel displays feature data classified by one attribute. The user visually compares two maps from different time spans. This provides an easy way to detect change over time. Each PageLayoutBean has its own time slider.

    Above:  Screen shots showing the ArcGISDoubleMapPanel with two attributes (in this case two vector layers) and one time slider.


    Above:  Screen shots showing the ArcGISDoubleMapPanel displaying one attribute (population density) and two time sliders.

    In addition to simultaneous visualization of multiple scenarios, the ArcGISDoubleMapPanel tool is also useful for performing change detection analyses, assessing current conditions and predicting future situations. To learn more about the SDSS, its architecture and implementation read the ArcUser article: Visualization, Interpretation and Evaluation

    Contributed by the ArcGIS Engine Java Product Team.




    Posted in Developer | Tagged , , , | Leave a comment

    ArcGIS Developer Poll Results

    Here are the results from the last poll.  It looks like 76 people participated, and more than 50% have already migrated from to .NET, and about 30% are still transitioning from VBA/VB 6.0 to .NET.

    Thanks for participating!  There’s a new one today and there will be more to come…

    EDN Team



    Posted in Developer | Tagged , | Leave a comment

    Context menus made easy: in Java

    As many of us might agree, context menus are a great way to place functions where users would intuitively expect them to be.  Right-click on a layer (provided your mouse has a right button) and capabilities specific to that layer should pop-up.  Right-click somewhere else, and the options hovering under the mouse change to something else.  This is a proven approach for helping your users do what they want to do more efficiently. Java developers who are using the ArcGIS Engine development kit are not provided the ability to create context menus right out of the box.  

    Steven Rozic and Lalitha Darbhamulla from ESRI recently uploaded a Code Gallery sample that we all hope you will find helpful.  It’s called “Creating a Context Menu for Layers“, although the source code could be applied in other contexts as well. An extra bonus:  the download includes two options to choose from.  One uses the ArcGIS ToolbarMenu and the other uses the JpopupMenu from the Java Swing package. 



    Posted in Developer | Tagged , , | Leave a comment

    New ArcGIS Developer Poll!

    We would like to introduce the new online ArcGIS Developer Poll.  If you remember way back, we had a similar poll on the old EDN site. 

    One of the main goals of this poll is to stay in touch with the developer community and to give you an opportunity to provide us with some direct feedback.  We’ll be using this information to post a other questions and blogs topics in the future. 

    Feel free to add comments here about other polls and/or blog topics that you would like to see.

    Keep your eyes peeled as we release new questions. 
    EDN Team

    Posted in Developer | Tagged , | 1 Comment

    ESRI Releases the ArcGIS API Evaluator

    If you haven’t heard, the ArcGIS Development Team has just released a new .NET utility called the ESRI API Evaluator.  This handy tool allows you to scan all of your ArcGIS .NET code and generate a complete set of API usage statistics.  This will reveal the DLL dependencies, version information and the number of calls made to all ESRI assemblies, interfaces and members. 

    Help improve the product
    One of the most important features of this tool is that it allows you to send your API usage information directly to the ArcGIS Development Team.  Once received, this information will be used to:

    1.    Better understand the APIs that our customers are using (most popular).
    2.    Make improvements to focused areas of the SDK (documentation and samples).
    3.    Make decisions for future API development projects.

    API Evaluator Scenarios
    Scenario I – Help improve the SDK
    You have been working on a number of ArcGIS projects and have had difficulty implementing various parts of the SDK.  Use the API Evaluator to let ESRI know what areas of the API are most important to you by uploading the usage statistics without actually sending us the code!

    Scenario II – Improve your code
    You have been working on an agile development project with a team of developers.  You would like to discover which parts of the API have been used the most by the team and if code reuse has been maximized.  Use the API Evaluator to determine the number of calls to all interfaces, methods and properties in the .NET assemblies and look for areas of improvement.

    Scenario III – Deployment
    You would like to determine the .NET Framework version, and ArcGIS license and extension requirements for an application.  Use this information to help determine the software and licensing requirements for deployment systems.
    It’s easy to use!

    Step 1.  Start the tool and run a new scan.

    Step 2.  Select the folder(s) you wish to scan.    
    NOTE:  If you are scanning a Visual Studio 2005/2008 web application, build and publish the website to generate the precompiled assemblies first.


    Step 3.  Optionally, supply your contact information if you plan to upload your scan to ESRI. 

    Step 4 – Confirm your selections.


    Step 5 – Review the results.

    Step 6 – Upload results to ESRI. Simply select the “Upload Scan” menu.

    A few reasons to give it a try
    I’m sure you can think of many different uses for this tool, but in general, you can use this tool to: 

    1.    Determine the general API usage for larger or unknown code samples.
    2.    Determine the licensing required to run an application.
    3.    Locate redundant code sections and make improvements.
    4.    Detect library dependencies to help with deployment scenarios.
    5.    Detect .NET version dependencies.
    6.    And most importantly, help improve the product (see below).

    More Information
    Where can I download it?  You can download the tool from the ArcGIS Engine Code Gallery.
    Where can I find more information? You can find the documentation on the ArcGIS Engine Resource Center online.

    We want your feedback!

    Although the “Upload Scan” functionality is 100% optional, we do appreciate all feedback from the developer community, so we hope you find this tool useful and you can spend a few minutes uploading the results back to ESRI. 

    Let us know if you have any questions or feedback.

    Thanks for your participation!
    ArcGIS Development Team

    Posted in Developer | Tagged , , , , | Leave a comment

    Podcast: Introduction to ArcGIS Engine Development


    The ESRI Instructional Series has a new podcast out there called “Introduction to ArcGIS Engine Development“.   It is about eight minutes long and it provides an introduction to ArcGIS Engine and how it can be used to develop standalone applications and extend existing ones.  Described in the podcast are the SDK itself, customization options, licensing, ArcObjects model, and the application framework.

    So, whether or not you have programmed using ArcObjects in the ArcGIS Desktop VBA editing environment, this podcast provides a good overview of the ArcGIS Engine development toolkit.  For more information, a great way to get started is at the ArcGIS Engine Resource Center.


    Posted in Developer | Tagged , | Leave a comment

    New Error Reporting in ArcGIS 9.3

    One of the new capabilities of ArcGIS 9.3 is the ability to send error reports to ESRI anytime that ArcGIS fails.  Problems due to memory leaks, hardware limitations, incompatible third-party extensions, and others have been known to be disruptive to your work and can be extremely frustrating.  We expect this new functionality will help us identify and solve problems quicker and more completely than ever before.

    This post here in the Geodatabase Development Blog goes into this further and includes a link to a short two-minute video from Todd Stellhorn (development lead for ArcGIS 9.3) who describes how this works in more detail.

    Posted in Developer | Tagged , , , | Leave a comment

    API Evaluator: Inspect your code, send us your feedback, improve the product!

    Here is a new .NET utility that you might find useful. The API Evaluator is a tool that allows you to scan your ArcGIS .NET code and generate statistics on the API usage.  It also provides you with a mechanism to send feedback directly to ESRI about the APIs that are most important to you.  Read on if you would like to know more.

    How it works
    The API Evaluator allows you to browse to a .NET .exe or .dll, scan the code, and identify all of the calls to ESRI types.  The report and statistics are returned to you in an interactive Results Viewer window.  This information reveals the following:

    1.    The .NET assembly references found;
    2.    The assembly version;
    3.    The ESRI types called; and,
    4.    The number of times a call is made to each interface, property and method.

    Scenario: Exploring the unknown…
    You download a large code sample and know very little about how the code was written or what types are referenced.  Simply use the New Scan option to step you through the scanning wizard browse to the assembly and generate statistics.  Use the Results Viewer to and expand the treeview and view the number of calls to each item. 

    Evaluating the Results
    The API Evaluator revealed that the code makes a total of nineteen calls to ESRI objects, from five libraries: DataSourcesGDB, GeoAnalyst, Geodatabase, SpatialAnalyst and System.  Two of the calls are made to objects in the SpatialAnalyst library. All of this information is recorded and displayed in the Results Viewer.

    So why is this important? 
    In this case, the tool revealed that SpatialAnalyst types are called, and therefore, the code will require clients to check out a SpatialAnalyst license at runtime. 

    I’m sure you can think of many different uses for this tool, but in general, a developer could use this tool to: 

    1.    Determine the general API usage for larger or unknown code samples;
    2.    Determine the license-level required for an application;
    3.    Refactor and improve your own code where redundant calls are identified; 
    4.    Detect library dependencies to help with deployment scenarios.
    5.    Detect version dependencies.

    BONUS – Send us your feedback!
    As an added bonus, the tool also allows you to upload your scan results directly to the ESRI Development Team.  When you upload, you have the option of providing your contact details before the information is sent to a web service hosted here at ESRI.  Once received, your statistics will be analyzed further to:

    1.    Better understand the APIs that our customers are using (most popular).
    2.    Make improvements to focused areas of the documentation and samples.
    3.    Use the information for future API development projects

    For more information on the tool, you can review the documentation or download it from the Code Gallery.

    Your Feedback is important
    Although the “Upload Scan” functionality 100% optional, we appreciate all feedback from the developer community, so we hope you find this tool useful and you can spend a few minutes uploading the results back to ESRI.

    Thanks again for your participation!


    Posted in Developer | Tagged , , , | Leave a comment