Follow Slashdot blog updates by subscribing to our blog RSS feed


Forgot your password?
Graphics Open Source Software News

Software Evolution Storylines, Inspired By XKCD 136

jamie tips this mind-blowing data visualization concept from (naturally) data visualization researcher Michael Ogawa, who explains that it was inspired by "this XKCD comic. It represents characters as lines that converge in time as they share scenes. Could this technique be adapted for software developers who work on the same code?"
This discussion has been archived. No new comments can be posted.

Software Evolution Storylines, Inspired By XKCD

Comments Filter:
  • inspiration (Score:3, Insightful)

    by FuckingNickName ( 1362625 ) on Friday October 08, 2010 @05:16AM (#33834044) Journal

    A data visualisation researcher hasn't seen this method of visualising data before xkcd? Really?

    • Re:inspiration (Score:5, Insightful)

      by kyz ( 225372 ) on Friday October 08, 2010 @05:22AM (#33834068) Homepage

      I thought that too.

      The xkcd comic is itself inspired by Charles Minard's 1869 flow map of Napoleon's march to Moscow [], a celebrated map in visualisation, and most recently popularised by Edward Tufte, one of the most well known data visualisation experts.

      Why would someone, who is supposed to be a data visualisation researcher, not have seen this celebrated work of his own field before he saw a knock-off cartoon?

      • by Andy Smith ( 55346 ) on Friday October 08, 2010 @05:29AM (#33834096)

        knock-off cartoon

        Superbly executed knock-off cartoon, if you please.

        • Re: (Score:1, Funny)

          by Anonymous Coward

          I want to see Memento as depicted by this flow graph cartoon mechanism.

        • Superbly executed, yes. And a principal exhibit in the argument that the comic be renamed from XKCD to OCD.

          "until 2007 when activity drops off."


          I want to see this graph for the SLASHCODE.

          "Until 2003, when Rob loses the will to live." :-)

      • Minard's poster is actually much more sophisticated - for example it includes quantitative info such as army size.

        This new "breakthrough" isn't much different to those rock family trees that show how bands are related via common members. Except it uses a computer.

        • by hattig ( 47930 )

          I guess Super Size Me could be represented with a gradually widening line.

      • Re: (Score:3, Interesting)

        xkcdsucks and xkcdexplained are the only reasons to read xkcd. For this comic I recall thinking, "I wonder which one will mention Minard?" But xkcdsucks went one step further, noting that comic 540 (by its "Napoleon's forces" label) almost confirms that Munroe had previously seen Minard's excellent diagram.

      • by @madeus ( 24818 )

        Good catch. I was thinking of that visualisation (I first saw it in Science Museum in London) but couldn't remember the details. I've seen implementations of the same format in The Economist too.

      • Re: (Score:2, Insightful)

        Huh? Minard's map isn't even close to the xkcd version:
        A) Minard doesn't depict time, except on the few points on the temp scale, he uses both graph axes for location
        B) There are no multiple actors in Minard's map
        C) XKCD map only trie to convey character proximity over time: the major point of Minard's map is connecting several seemingly unrelated data points: it makes recognizing patterns easier.

        So... I agree that Minard's map is a "better" inspiration for this work (and maybe it was the inspiration but x

        • Re: (Score:3, Insightful)

          by kyz ( 225372 )

          Take a look at the thickness of the line in Minard's graph, ebbing away as Napoleon's troops die. That was the main purpose of the graph, to visualise how someone could leave with 422,000 men and come back with 10,000. That's why it's famous.

          Now take a look at Sauron ebbing away as he uses his power to create orcs, and how the orc armies and human armies ebb away as they're killed.

          • Oh wow, I hadn't even noticed the orcs and men. Oops... I still say that's a minor feature in the xkcd map.

            Minard's work is awesome because the other data sources cleverly tie into the army size changes: like I said, it's about pointing out patterns that otherwise would require quite a lot of text. I don't see Xkcd doing that (or even trying to).

      • Re: (Score:2, Funny)

        by Anonymous Coward
        Hey! Give him a break, he's probably a grad student. And we, grad students, of course spend more time reading cartoons rather than actual journal publications. Now, from the researcher perspective, xkcd should be providing references to us, grad students, to avoid having "" in the bibliography!
      • Re: (Score:3, Funny)

        by khallow ( 566160 )

        Why would someone, who is supposed to be a data visualisation researcher, not have seen this celebrated work of his own field before he saw a knock-off cartoon?

        An amazing act of hindsight. I would have continued to labor under the false impression that this sort of work required a great deal of creativity and effort, if it weren't for your knowledgeable insight into what the researchers should have been thinking!

      • Re:inspiration (Score:5, Insightful)

        by plcurechax ( 247883 ) on Friday October 08, 2010 @10:56AM (#33835914) Homepage

        Why would someone, who is supposed to be a data visualisation researcher, not have seen this celebrated work of his own field before he saw a knock-off cartoon?

        You're either a) new to IT / Computer Science, or b) too young to have experienced a revolutionary new paradigm that matches either anything discovered at Xerox PARC Labs or in general 20-30 years ago by professionals who are now "grey beards," but commonly referred to as old fogies when they point our that even IT / Computing and Computer Science has a history.

        Examples include Alohanet (vs. Wi-Fi / "wireless Internet"), time-sharing systems (vs. thin computing or virtualization), IM (vs talk / irc), CU-SeeMe (vs video IM, ChatRoulette), Jennifer Ringley (vs cam-girls), Xanadu (vs. iBooks, Google Books), and Nikola Tesla (vs. "wireless power" and numerous other things he invented, prototyped, or predicted).

        • by kyz ( 225372 )

          I hear you, and I agree almost entirely - especially, let's say, Doug Englebart's mother of all demos.

          However, I'd say the closest reinvention of Xanadu is the WWW, not e-books. And the WWW succeeded where Xanadu failed because Tim Berners-Lee either didn't know or didn't care about all the use cases Xanadu tried to fulfill.

          He got 'good enough' that let people experience the magic of hypertext, while Ted Nelson still isn't there yet, despite the 30 year head start, because he's still trying to solve problem

    • Re:inspiration (Score:4, Interesting)

      by mcvos ( 645701 ) on Friday October 08, 2010 @05:40AM (#33834134)

      It reminds me a lot of the graphs that github creates, showing who committed when, who pulled from whom and merged what with what. I could stare at those graphs for hours.

      • Immediately thought about Github when I read the summary too. Been watching Kohana's graph the other day, it's fascinating.

      • by skids ( 119237 )

        Yeah It's mildly improved in that the hair-thin lines during stalls in a developer's output would probably make the github graphs better.

        But not the first person to ever graph project activity this way by a long shot.

    • Re:inspiration (Score:5, Insightful)

      by Exitar ( 809068 ) on Friday October 08, 2010 @05:59AM (#33834186)

      Probably he did, but citing xkcd granted him an article on /.

    • Re:inspiration (Score:4, Interesting)

      by Ponyegg ( 866243 ) on Friday October 08, 2010 @06:30AM (#33834258)
      I'd be interested in seeing XKCD's take on Being John Malkovic though.
    • Re: (Score:1, Interesting)

      by Anonymous Coward

      This is in fact the exact strategy that Kurt Vonnegut used to use to plan his novels. He used to discuss it in terms of Slaughterhouse 5 where Dresden was a large black bar that most of the characters didn't emerge from.

    • There's a first time for everything. Got anything useful to say? mod parent and nearly every other post so far -1 arrogant.
      • I just invented a windmill used to generate electricity. Its inspiration was xkcd 556 [].

        Would it be arrogant to point out, like most responses, prior art for both the idea and deployment of wind turbines?

        Also, everyone who has read or even heard of Don Quixote is aware that he tilted at windmills. If you have lived in Spain for any length of time the sight of windmills will bring Cervantes to mind automatically. It is not funny to simply put Don Quixote in a scene involving scary windmills, any more than it i

        • Ahh. That's who that is in the last frame. I should know that, I have a whole collection of Don Quixote DVDs for my kid. Of course, they are in Castilian and my Spanish is severely lacking.
    • prior art:

      Charles Joseph Minard, a french civil servant drew a fantastic line/statistical diagram showing data from Napoleon's March to Russia [] on the 20th November 1869. This combines many data points and also shows the horrific losses sustained by Napoleon during the winter (and river crossings) and is actually far more complex than examples in TFA.

      1. invent new idea
      2. write about it on interwebs
      3. ...
      4. ... (think about profit and all round cleverness)
      5. ....
      6. errr?
      7. .....
      8. !profit
      8a. because lo

  • The obligatory XKCD comic.

  • by Chrisq ( 894406 ) on Friday October 08, 2010 @05:22AM (#33834072)
    Very often it is difficult to see at a glance whether a project is mature and stable or just dead. It would be interesting to see whether this type of visualisation can tell you at a glance how healthy the project is. If so it would be nice to have this view on sourceforge, etc.
    • Re: (Score:3, Funny)

      Or Across projects. So you can see which developer / client / manager is the most destructive to projects. Or how projects are given to others (like the One Ring in the XKCD example) before ending up in /mnt/doom.
    • Re: (Score:2, Troll)

      by Lord Bitman ( 95493 )

      "Mature and stable" is just a euphemism for "dead". If your project REALLY has no bugs, and all its users are fully satisfied with the current feature-set, that just means you don't have any new users. It is far more likely that all your current users have long-since learned to live with bugs you don't feel like fixing, or have built ad-hoc work-arounds for bugs and missing features since your project is too "stable" (read: dead) to accept patches or proposals.

      • Re: (Score:3, Insightful)

        by m50d ( 797211 )
        That's simply false; some programs do something, do it well, and know where responsibility is best handed off to another program. When was the last time ls needed an update?
        • ls history (Score:3, Informative)

          According to this [] there are 5 files that start with "ls".

          Except for ls.c, all those files have only one entry on their history. The "initial revision" on 1993-06-16.

          On the other hand, you can check the history of ls [] by yourself. Ignoring a "build" commit done on 2010-09-18 (and by the same guy who did the "initial revision" ones), the last commit is from 2010-07-01 with the message header of "ls: use the POSIX date style when the locale does not specify one".

          While not extremely important, it does show tha

        • Or qmail for that matter.
        • Re: (Score:3, Funny)

          by leonardluen ( 211265 )

          ls is boring, they should add a feature "ls --im-feeling-lucky" to list a random directory to add some spice back into it.

      • Mature and Stable can mean that the new functionality is being add in a layer above ....

        When you stop adding features to the core and abstract them away into another level then the core can stabilize

        The reason most stable projects are dead is because new features are no longer added at all ....

      • Re: (Score:3, Insightful)

        by Kjella ( 173770 )

        Most of the time. I'd say you are right but there are exceptions. One example is Privoxy []. It'a been nearly the same since the 3.0 release in 2002, but there's been constantly tiny little fixes so it's not abandoned and has had an average 175000 downloads/year not including Linux distros etc. so obviously many people find it useful.

        So they're not taking over the world. But is there any point to try to be another jack-of-all-trades software? It does one thing and it does it well, or if you'd want to do it dif

      • I completely agree, but anyway, does somebody around here want to volunteer to support GNU truefalse? It simply didn't keep up with the users needs recently.

      • by Guignol ( 159087 )
        this is hilarious, awesome, not so untrue, just as cynic as I like it to be
    • by IorDMUX ( 870522 )

      Very often it is difficult to see at a glance whether a project is mature and stable or just dead. It would be interesting to see whether this type of visualisation can tell you at a glance how healthy the project is. If so it would be nice to have this view on sourceforge, etc.

      Hmm... Would someone mind attempting to apply this view to Team Gizka's TSLRP for Knights of the Old Republic II?

      I'd be curious to see how *that* turns out.

  • We've got a CVS repository of about half a million lines of C++ code, running back at least 5 years. I'm almost afraid to run code_swarm on it.
    • Argh! code_swarm is the previous visualization scheme. Source is not yet available on this one. And I've already lost hope. As I unzipped the archive, I thought I saw .jar files. File extensions beginning with that letter are not welcome where I work...
      • Re: (Score:3, Insightful)

        Must be tough browsing the web without JPEG images.

      • by Paua Fritter ( 448250 ) on Friday October 08, 2010 @07:40AM (#33834458)

        As I unzipped the archive, I thought I saw .jar files. File extensions beginning with that letter are not welcome where I work...

        That must be awkward ... most file extensions do begin with . after all.

      • by richlv ( 778496 )

        hehe, seeing the name i thought "i've seen it before... wasn't it that repository visualisation stuff, codeswarm ?"

        that one was quite nice - unfortunately, abandoned soon so for non-coding users some customisation was missing. so these are very nice concepts that can be sometimes used, but so far they don't seem to attract developer attention to get them going.

      • What's wrong with Java? I love it, personally, I think it's elegant.
        • Re: (Score:3, Informative)

          by tehcyder ( 746570 )

          What's wrong with Java? I love it, personally, I think it's elegant.

          The thing is, you're not even allowed to post on slashdot unless you've already written a far better programming language than Java before your twelfth birthday.

  • by Anonymous Coward on Friday October 08, 2010 @05:36AM (#33834122)

    The XCKD comic was a great example of visualization because after a brief time acclimatizing to the layout, I could immediately comprehend it and draw conclusions out of it. Doing the same with a software project would be interesting, but right now all I see is a bunch of tangled lines -- they don't mean anything to me.

    Anyone who has worked on this project -- do they mean anything to you? Anyone else -- what do you see in these graphs?

    • Re: (Score:2, Funny)

      by Anonymous Coward

      I see in the Python timeline that Guido van Rossum forked into "guido" (red line) and "gvanrossum" (dark green line).

      • Re: (Score:1, Funny)

        by Anonymous Coward

        And therein lies the power of Open Source Software. It's something you hear time and again:

        If you don't like how the developers are handling things, you can go fork yourself.

    • I was under the same impression.
      I work with data and data visualization. I prefer drill-down visualization techniques starting with a general view and extending interaction via drill-downs.
      The samples presented don't tell much. The level of visualization is too granular for a general view. IMO, it+s a bunch of tangled nonsense, helping in no way. But it's "shiny" and nicely colored - so managers might like it a lot :)
  • Timeline... (Score:5, Funny)

    by geogob ( 569250 ) on Friday October 08, 2010 @05:53AM (#33834164)

    I bet the Windows timeline looks like the one for Primer.

  • by pedantic bore ( 740196 ) on Friday October 08, 2010 @06:11AM (#33834220)

    Sure; we've tried every other fad that's come along, might as well try this one also.

    • I remember when the acid wash jeans and leopard print fad hit software. I still have nightmares.

      Also does anyone know what this whole BiebeRPC craze is about? Ever since it started up I've noticed my servers running at a much higher pitch...
  • by Dexter Herbivore ( 1322345 ) on Friday October 08, 2010 @06:13AM (#33834224) Journal
    Oh wait... :)
  • Special request (Score:1, Flamebait)

    by airfoobar ( 1853132 )
    Could somebody please draw me a diagram for Mr Ogawa you have too much free time on your hands? Much appreciated.
    • now----------------------->infinity

      Apparently, my comment looks too much like ascii art without this statement. It also needs fewer junk characters without this statement. No wonder nobody else drew you such a simple timeline. These characters are not junk, stupid filter! This is a new, exciting visualization method.

  • by SharpFang ( 651121 ) on Friday October 08, 2010 @06:43AM (#33834290) Homepage Journal

    Say what you want, these graphs look like some evil worms from below, kind of parasites that prey on the Deep Ones... Scary.

  • by argStyopa ( 232550 ) on Friday October 08, 2010 @06:52AM (#33834306) Journal

    ...but XKCD pretty clearly was inspired by [] (first version 1890).

    It's a pretty cool visualization, illustrating in a very superficial way how each state mutates and evolves politically into its descendants.

    • by karnal ( 22275 )

      But there's no picture in your link! It must have a picture or I'll lose interest!!!!!

  • Even with SVG!
    • Even with SVG!

      Yep. Unlike the XKCD version, the graph examples in TFA are unreadable messes of spaghetti lines. While the concept is a great one, this implementation from (naturally) data visualization researcher Michael Ogawa is embarrassing.

  • Am I the only one who thinks this looks suspiciously like a git commit graph, as represented in gitk/qgit/etc.? Like, a really, really badly managed graph?

  • TFA says he'll open source it anyway, but this would be a great addition to the line up of code metrics at Ohloh.

  • []

    *shrug* Had to try it.

  • Timelines are a key part of Montessori at the elementary level. Had the researcher attended Montessori school, he would not have had to rely on xkcd :-) See photo of group of students working with a large timeline on Bergamo Academy's home page.
    • Re: (Score:3, Insightful)

      by ceoyoyo ( 59147 )

      We did lots of timelines in my perfectly ordinary elementary school a couple of decades ago.

      • Yeah, well, did your elementary school impress upon you an absurd sense of your own self-worth?! Hah! Didn't think so!

        • by ceoyoyo ( 59147 )

          Good point. My parents probably didn't get the same satisfaction telling their friends about it either.

  • It's a chaotic mess. If a data visualization technique doesn't bring clarity to a subject, but instead just results in a Jackson Pollock jumble, what exactly is it?

    Is it art? If this is its primary goal, I have no argument.

    If it, however, is meant to clarify the history and relationships of principals involved with the creation and maintenance of a program's codebase, it's a complete failure. There is no clarity here, less so than even a simple table would provide.

When you are working hard, get up and retch every so often.