Open Source Visualization Framework
As my graduation project at ITP, I designed and developed OpenVisuals.org, a framework for different open source visualizations and data sets to work with each other. Gathering people who are interested in information/data visualization together, website is a user submitted collection of visualizations and data sets, that work with each other: Users can upload a data set and visualize it using any of the uploaded visualizations on the website, or develop a new visualization on top of any uploaded data set.
Having raised a lot of attention in the recent years, data visualization proved itself to be an important subject to provide better understanding of data and information which cover a wide spectrum from data-intense scientific researches to election results. Most of the times, and except pie charts and bar graphs, good data visualizations are designed and tailored for a specific data set, and are not necessarily available publicly to be used with different data sets. This limits the potential of visualizations to be used in different purposes.
A simple user scenerio is:
>> A person interested in visualizing a data uploads the data set to the website. She browses the website and picks a visualization to visualize his/her data. In the meantime, She allows her data set to be used by anyone under Creative Commons License.
>> A visualization artist finds this data very interesting. He copy/pastes the given piece of library code to Processing and starts building his own visualization using that data set. The library allows him to access the data set that is in the cloud. Once he is done, he uploads his visualization to the website to share with others. In the mean time, the library he used makes his visualization possible to work with other data sets on the website with this visualization through the website.
This framework includes two assets:
- The website, OpenVisuals.org, which supports the framework as the place for people to upload, browse data and visualizations, to explore by mapping the data sets to visualization, and to communicate with each other using commenting, messaging, etc…
- OpenVisuals Java Library, which is an API for Processing to make building visualizations easier by providing common functions. Also, this library functions as the bridge to map any uploaded visualization to any data set on the website.
This project can be considered as the ‘visualization counterpart’ of many data websites (eg. Swivel, Many Eyes, Gapminder), making it possible for users to develop and collaborate on the visualizations end.
The Fail Part
While working on this website, I preferred to design and develop while it was live on the web: anybody could see the website being developed on the fly. This gave me a great opportunity to get early feedback on the features, design and bugs. The most significant feedback that I had was to make the website open to any Processing sketch, and be less specific rather then focusing on the visualization theme. Before any visualization-sharing website, Processing users needed a place to share any of their sketches.
Upon this observation, I copy/pasted the whole website under a new domain, OpenProcessing.org, and stripped out the visualization&dataset focus by redesigning couple of pages. Since then, OpenProcessing has welcomed by the community with great interest and appreciation, and this led me to discontinue my efforts on OpenVisuals.org and put all my energy on OpenProcessing. Well, the rest of the OpenProcessing story is here.