Wednesday, November 28, 2007

Chronoscope: 2 + 2 = 5 with GWT and Android

Timepedia has released Chronoscope, an open source charting and visualization library, built using GWT.

It features:
  • Canvas abstraction for drawing vector graphs
  • Graph Style Sheets abstraction for configuring the look-and-feel of charts
  • Scalable multiresolution rendering supporting up to tens of thousands of points
  • Zoom and pan at interactive frame rates, from centuries to milliseconds
  • Auto-ranging, auto-layout of chart axes and ticks.
  • Auto-legend, and mini-chart Overview
  • Add pushpin markers, domain and range markers, and overlays like Google Maps
  • Bookmarkable chart state, works with Back button
  • JS interopability. GWT API can be used by pure Javascript programmers
  • Microformat support. Charts can be configured without programming.
  • Server-side Font assistance. Render rotated text.
  • Portable, Chronoscope is not tied to GWT, can be used to render from servlets, applets, or other environments.

What is particularly interesting is how the Chronoscope team was able to take their existing Java source code, add 8 hours of Android exploration, and ended up with the same charting and visualization library that works on Android using their graphics support.

This is one area that GWT truly shines. The fact that you write your code in the Java programming language means that you can reuse it in other places where Java runs. Being able to write one application and quickly have it run on Android and the iPhone is pretty compelling.

Here you can see it running:


  1. Hi!

    db4o did a similar effort with their object database to be Android ready ( and even reported two Android bugs to the Android developer list but unfortunately nobody at Google is blogging about it =(

    Best regards!

  2. I guess one of the things that concerns me about this is it implies we are going backwards in time. The Java write once run everywhere idea totally failed.

    The nice thing about the iPhone is you can code in HTML + JavaScript. I'd rather see the Flash plugin go mobile for rich graphics than go backwards to an Applet'ish approach.

    This is a mind Fu@# by Google. You still have to code for Blackberry + Windows Mobile + Android + etc.... so why as an architect would I ever go backwards to program for device platform? Isn't it easier and more sensible to install Firefox Mini on all the devices and use "internet'ish" code?

    Windows Mobile hasn't succeeded as a consumer end dev platform (that is much richer than this) but business love them. To be frank, enterprise still hasn't warmed up to Google so where does this technology fit in? Where does it get us? Is it clutter? Just because it is out there isn't a compelling enough reason for me to base a mobile business around. A heck of a big step backwards to take a small step forwards?

    I don't know.

  3. This comment has been removed by a blog administrator.