Building New Tools Outside the Browser: A New Look at Custom Stand-Alone Applications for Earth Data Access and Visualization

Today, the debate between online services and installable applications is often characterized as an either-or, winner-take-all situation. In the earth sciences, however, due to data handing and visualization needs, a combination of online, service-oriented architecture (SOA) tools and custom installable applications holds the most promise if these data resources are to be used by a greater and more diverse user population. The Data Information and Application Layer (DIAL) technology demonstrates the value of custom application authoring for earth data access and visualization. The relative merits of online tools and custom applications are discussed as well as their complementary uses by various user populations.


INTRODUCTION
Fifteen or so years years ago, and about ten years after the first widely marketed personal computer, Sir Tim Berners-Lee unleashed the World Wide Web. This created an entire new use for these desktop and, later, laptop devices. Browser software allowed Internetconnected devices to first display text and images, later, video and audio, and more recently, server-side software offerings. New capabilities have developed in the area of user-side control. At the same time, new security concerns have multiplied. At the same time, computers continued to grow in computing and storage power. Today, the average laptop is faster and has more memory and disk storage than the average engineering workstation in the 1980s.

COMMERCIAL DATA VISUALIZATION TOOLS
Thirty years ago, university researchers such as David Stern at Colorado, Cleve Moler at New Mexico, and Harold Fisher at Harvard, built pioneering data analysis and visualization software tools for mainframe and mini-mainframe computers. These early efforts grew into the commercial software (IDL™, Matlab™, and ArgGIS™) that are mainstays for scientific data use today. In the 1980s these tools were ported to UNIX and then personal computer operating systems as these gained sufficient hardware capabilities. As the packages grew in their own capabilities, they grew in complexity. Today, being proficient in one or more of these software platforms is a common right-of-passage for graduate students in the earth sciences.
In the area of earth science data access and analysis, these commercial offerings continue to lead the field in terms of usage and performance. While the yeoman's share of the actual data analysis and visualization work being performed today is done through these commercial software products, their steep learning curves and license fees leave prohibit many potential users. Even with student license discounts lowering the price barrier, the time required to begin to use these products makes them unsuitable for nonspecialists. Images of data can easily be provided thought the Internet. Promoting wider data use fluency is a much more difficult task.

OPEN SOURCE AND ONLINE TOOLS
Over the past two decades, educators have been working to build alternative software and services to meet the needs of these other earth data users. MyWorld GIS at Northwestern University, MapServer at Minnesota, and Unidata's Integrated Data Viewer (IDV) are examples of products and services designed to help widen the use of earth data and maps.
Even more recently, integrated server-side data access tools allow users to browse data offerings and visualize search results in their browsers. Giovanni at Goddard Space Flight Center, The Live Access Server (LAS) at NOAA's PMEL, and the NASA funded DA-TAFed project are examples of this new capability. These services may be using IDL or other top-end commercial software on the server-side, but the complexities are hidden from the end user.
Looking around the software universe one can see a definite trend toward software as a service. Google, Microsoft, Adobe, and Yahoo are now offering types of software that were formerly available only as installed applications. Google Earth, for example, now can be run from within a browser through the installation of a plug-in. We may be entering into the heralded age of ubiquitous connectivity and zero third-party software. A conspicuous counter example to this is computer gaming, where applications soak up gigabytes of CPU and the fastest available graphics cards, even as they connect to online communities. These are the anti-browsers, and their demands have pushed the limits of computer capabilities for years.

THE CASE FOR STAND-ALONE APPLICATIONS
A reverse trend is also apparent. Adobe, which now owns Flash (Flash was designed to create Internet graphics), is porting this into computer installable applications through its Adobe Air system. Google Earth as an application is being remade in Version 5 to be more robust. Thousands of developers are queuing up to build installable applications on the iPhone. In the case of software as an internet service verses software as a stand-alone installable on your computer, it looks like the winner is: both. There are good reasons to run a word processor as a web service, and equally good reasons to run complex mathematical or visualization processes on your own CPU.
In the earth sciences, the final piece of the data access software/service pie has recently been added through the NASA funded the Data and Information Application Layer (DIAL) ACCESS Program project. This solution offers application authoring tools that let any data provider, curriculum developer, or commercial or non-commercial software developer create new stand-alone applications for OS X or Windows/Vista almost as easily as creating a home video. The technology that drives this capability is acquired through the use of run-time IDL™ code being called by applications published through the Adobe Director™ multimedia application authoring package. DIAL is extremely fortunate that ITT Visual Information Solutions as offered a license for the IDL™ runtime code that allows the DIAL effort to extend free authoring capabilities for any educational use of this technology.
The concept here is to extend the code resources that are already available, including libraries of user-generated code for products like IDL™ and Di-rector™, and find a way to make these previously independent commercial software products work together. For two decades, Director™ (formerly Macromedia Director™) was the mainstay for authoring multimedia educational software applications on Macs and PCs. After constructing all the media and user interface graphics and user interface dynamics (Direc-tor™ can be programmed to respond to user feedback), a single "Publish" command outputs a stand-alone application for the desktop computer. The DIAL technology has created a plug-in ("Xtra") that allows this authoring software to talk directly to runtime IDL™ code libraries. Technically, this means handling user instructions between Javascript and IDL™ and blitting arrays via the X buffer. The outcome is that Director™ authoring now can include data windows for visualization and analysis.

CHOOSING ONLINE OR STAND-ALONE
One of the questions that arises now is this: How do we choose to feed data trough a web service or through an application authoring tool, such as DIAL? First, there is little real why you cannot do both. The same data set run through a web service can also be used within a DIAL application. With the web service you have the advantage of easily updating the data being served (although DIAL can pull in new data through OPeNDAP and WCS data services). DIAL is con-stantly upgrading it's compatibility with new operating systems. Similarly, web services must deal with incompatibilities between browsers and browser versions.
There several advantages to working through a stand-alone application. The CPU on your new computer can process complex visualization routines with remarkable speed, creating a user experience the is hard to duplicate in a server-side environment. The actual user interface can be tailored to the needs of specific user groups. Server-side visualization environments are normally "vanilla" interfaces, designed for whomever Googles into the site. When a server goes offline, a condition the likelihood of which is multiplied as chained services require multiple servers, the server-side service-oriented architecture (SOA) service is unavailable for all users. With an installed application, when one user spoils their data DVD, nobody else is affected, and they can always download the software again.
Despite the difficulties of building and hosting complex service-oriented architecture (SOA) services for earth data browsing and analysis, this approach offers future capabilities that can greatly extend the reach of earth data use. Some of the early promises for SOA development, such as the idea that these services can be registered and reused by third-parties to build new services, have yet to be demonstrated, and are probably over-optimistic. Not even Google is claiming to provide services that others can independently integrate. Open-source development is another promise not soon approachable by the earth data SOA developers, who commonly use commercial software running on their servers to deliver the data manipulations their services require. Still, the goal of searching and analyzing earth data through a web browser has demonstrably been met.

"USER-NEAR" APPLICATION DESIGN
The logic of DIAL interface design is what I call a "user-near" approach. The idea is to create custom interfaces that are very close to the needs of targeted user groups. In a classroom setting this might mean creating software that works for a single lesson. The big commercial software products rely on a "user-far" approach, catering to the needs of as many different groups as possible in order to expand their markets. This is one reason why their interfaces become so complex over time. "User-near" does not mean reinventing the GUI (graphical user interface) every time one creates a new application. Rather it means exposing the user to only those data and analysis/ visualization tools as they need to finish the task at hand. Best-practice GUI objects are reusable between applications.
At the same time that DIAL promotes easy data access and interpretation through its custom interfaces, it also promotes data fluency by giving users the chance to experiment with data visualization. Every time they re-visualize the data they take advantage of the capabilities of their CPU and graphics cards. Often, revisualizing a data set can be done in less than 1/10 of a second. This allows users to feel in control of the visualization process. Long-time earth data users are perhaps more forgiving when it comes to waiting several seconds or minutes for data to be displayed. These are people who can remember what it once required to pull data from the DAACs. For new earth data users, who are more familiar with the user experiences of, say, Google Maps, the ability to change a data image within the time threshold of a single second is a key factor in user satisfaction.
The largest limiting factor for authoring earth data applications, even when using a streamlined authoring tool such as DIAL, is the need to access and process the data sets to be delivered to the user. Each earth data product has its own individual access and formatting challenges, as scientists in the field have long discovered. And once the data have been corralled, these still need to be manipulated within the software. DIAL uses the runtime version of IDL™, which means that the application authoring team will need someone who can program in IDL™. Even though the user sees little of the complexity inherent in programming IDL™ data manipulations, these are still present at the authoring stage. Similarly, the user interface is programmed using Adobe Director™, which is a widely used, and user-friendly application authoring environment.
The complexities of using Director™ are far fewer than attempting to program a new user interface in, say, Java. Director™ offers powerful tools for including video and audio, text and user feedback. Many of these tools require no coding at all. However the learning curve is still enough to eliminate week-end enthusiasts from jumping into Director™ authoring. All of the complexities of accessing and processing earth data from NASA and NOAA data centers is inherent in either online or stand-alone application authoring. Again, the idea is to hide these complexities from the users.

FINAL THOUGHTS ON DESIGN AND IMPLEMENTATION
The task of extending the use of earth data resources to a broader and more diverse audience requires developers to call upon a broad inventory of tools and services. Unlike the current science user, who doubtlessly spent hundreds of hours mastering one or more of the commercial data handling software environments, and hundreds of additional hours troubleshooting the data access pathways for those data products integral to their research, new users have different expectations and limits to their patience and perseverance. By adding a relatively easy-to-master, data rich software authoring environment to the inventory of available tools, the DIAL ACCESS project brings an entire new (or old, as it harkens back to the prebrowser days) capability that NASA and other agencies can use to attract, service, and satisfy new cohorts of data users.

FIGURE: 1
DIAL OMI NO2 data viewer screenshot displaying the annual "July 5 measles" effect. This shows the annual impact of hundreds of towns setting off fireworks on July 4th. On the Left, the data from the OMI tropospheric NO2 data product for July 5, 2006. On the Right, the anomaly with the average data readings for tropospheric NO2 for the month of July. The region shown is the Upper Midwest United States.