Monday, June 16, 2008

Data Visualization: 'Life' of Open Source Projects

Part of the "art" of communicating IT and business abstractions - technical challenges, project roadmaps, budget performance, customer relationships, IT effectiveness - is landing on the right visualization. A picture tells a thousand words, and if you can draw the picture well, your target audience will grasp these concepts quickly, and (potentially) get insights that were otherwise difficult to attain.

I have a large backlog of web links to point to, posts to write that I'll probably start cutting into, now that I've seen this latest bit of visualization ... via Slashdot ...

    A student at UC Davis has created some stunning visualizations of open source software contributions, including Eclipse, Python, Apache httpd and Postgres. From the website: "This visualization, called code_swarm, shows the history of commits in a software project. A commit happens when a developer makes changes to the code or documents and transfers them into the central project repository. Both developers and files are represented as moving elements. When a developer commits a file, it lights up and flies towards that developer. Files are colored according to their purpose, such as whether they are source code or a document. If files or developers have not been active for a while, they will fade away. A histogram at the bottom keeps a reminder of what has come before."

As a developer, I can draw connections between the narration of significant events and the "flow" of objects. I've used these tools/platforms for some time now, and the story told by the animation connects nicely with my understanding of these tools' "personalities" - gives some insight on how they "grew up".

Python: This one fits my understanding of a typical open source project; lots of work by one primary, maybe one or two secondary developers, with fits and starts, bursts of activity. Over a period of time, a limited number of additional authors contribute, and things slowly expand until critical mass is hit, and Python is released to the public. Then, a flurry of activity as the popularity takes off ...

code_swarm - Python from Michael Ogawa on Vimeo.

Apache: I was fascinated to see this project start off as an exercise in documentation - and stay like that for the longest time (code doesn't appear until about a third of the way through the movie). Like Python, Apache is a focused platform/application, and had a fairly concentrated core of developers and modules - unlike ...

code_swarm - Apache from Michael Ogawa on Vimeo.

Eclipse: I watched this movie first, but it belongs last in the To-View list. Eclipse is a wide-ranging platform with a large number of modules/functions - and a correspondingly large number of developers. It's amazing to think that the overall project could maintain such a high-quality, unified vision.

code_swarm - Eclipse (short ver.) from Michael Ogawa on Vimeo.

I'd love to see the Linux video ...

Previously ...

  • Another Spam Graph - The Impact of Spammers Changing Tactics (September 17, 2004)

  • Communicating Complex Technical Concepts (March 21, 2005)

  • Spam Graph redux (nice filter!), and an interesting meme I stumbled upon (May 24, 2005)

  • Customer DNA - A Different Take on Understanding Markets and Networks (June 11, 2005)

  • Build a Framework: Your chart junk is my roadmap / vision statement (December 27, 2005)

  • Project Status Dashboards Best Practice (and a PowerPoint trick) (May 3, 2007)

  • Integrated Supply Chain Benefits Go Beyond the Internal Stuff (November 11, 2007)

  • Measuring and Reporting IT Value (1 of 2) (November 16, 2007)

  • Measuring and Reporting IT Value (2 of 2) (November 20, 2007)

  • Invisible Technorati Tags:


    No comments:

    Clicky Web Analytics