A UC Davis graduate student has created short, colorful movies that show the development of open source software. With dancing points of light, rings of color and a soundtrack, the Code_swarm animations show how software such as the Python scripting language and the Apache Web server have developed from the contributions of different programmers.
Inspired by music videos, the objective of Code_swarm is to create an engaging visual representation of computer software accessible to anyone, said Michael Ogawa, who created the movies in the laboratory of Professor Kwan-Liu Ma at the UC Davis Department of Computer Science.
Computer software projects are among the most complex artifacts ever created by humans. Some of the most complex are "open source" programs that are created by a floating group of volunteers developing and making changes to different parts of the code.
In Ogawa’s videos, the names of those developers float across the screen and fade away if they stop contributing. Colored dots, representing new files, appear in random locations and fly toward the developer working on them, forming rings around the names. Developers working on the same or related files hover together; the names of those working on different parts of the software are farther apart.
"The viewer gets an impression of the dynamics of the project: Who the big players are, whether they work on the same or separate files and the scale of the project in time and space," Ogawa said.
The animations show that there is no single, signature way to create open source software, Ogawa said. Some projects are the work of a single person for long stretches of time, some are guided by a small group and others are regularly worked on by a large group.
Ogawa calls Code_swarm an example of "organic information visualization," which turns data into a living, breathing system. He chose music videos as a model for the final product because they are short, dynamic and interesting, in contrast with most academic videos, he said.
The Code_swarm software itself is now open source, hosted by Google Code. Examples of the videos can be found here.
[Andy Fell @ University of California - Davis]