16 August 2010

Using Vision to Think

While a college undergraduate studying Computer Science, I also developed a deep interest in Cognitive Psychology. Why do we perceive the world as we do? How do we make sense of the information we encounter on a daily basis? I grew excited to explore how our knowledge of human perception and cognition could inform the design of better computational tools. This passion has continued through graduate school, where my research has focused on interactive visualization: using visual representations of data to improve our ability to analyze and communicate information.

Due to ubiquitous Internet use and the masses of information being generated by both research and industry, the challenge for people to learn all we need to is growing exponentially, while our human capacity may not be keeping pace. Can technology help bridge this gap? A large part of the human nervous system has evolved to process visual information. Thus it makes perfect sense to develop visualization tools that assist people in comprehending data through images that help them quickly identify interesting or unusual information.

Different Strokes for Different Folks

As I sought to create useful visualization tools, I realized that a "one size fits all" approach is not sufficient. Differences in the kinds of data, terminology, and conventions used in various academic and commercial fields increases the challenge of developing useful visualizations. Instead of relying on inflexible, pre-built components, I felt that designers could benefit from tools enabling the creation of new and customized visualizations that are tailored to a specific application domain.

In response, I built the Flare visualization toolkit, an open-source framework built on the ActionScript 3 programming language. Flare enables people to build and customize a wide variety of interactive visualizations. For example, it can be used to build basic data graphics, complex animations, and interactive network diagrams. Flare is also designed to make it easy for programmers to create new visual representations.

Interaction and Collaboration

Providing visualization tools for Internet delivery allows viewers to explore new ways to look at content and to request more information on demand. Different visual representations for examining data answer different kinds of questions and pose yet other questions. Allowing viewers to manipulate the presentation of the data themselves helps them spot those points of interest and absorb concepts more quickly.

AlthoughFlare is still young, it is already attracting some attention, having beendownloaded over 5000 times since its release in October 2007. Companies rangingfrom start-ups to large corporations have been using the software for bothinternal data analysis and new visual interfaces. Students at universitiesincluding UC Berkeley and Georgia Tech are using Flare to support both researchand course projects. Furthermore, educational researchers are using Flare tocreate online tools for teaching statistics and math concepts. By givingstudents the ability to interactively compare the visual results of differentapproaches, they can see the effects immediately and better understand theimpact of various statistical models.

Why ActionScript?

One of our primary goals with the Flare toolkit is to provide rich visualizations that can embed seamlessly into the web with minimal pain on the part of users. Given its wide adoption and visual capabilities, the Adobe Flash Player was the clear choice. The release of ActionScript 3 further sealed the deal, enabling better performance and improved programming models. By leveraging the Flash platform, Flare offers a rich and reliable way to develop and share information visually.