Software Evolution Storylines, Inspired By XKCD
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?"
A data visualisation researcher hasn't seen this method of visualising data before xkcd? Really?
The obligatory XKCD comic.
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.
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.
Nae king! Nae laird! Nae yurrupiean pressedent! We willna be fooled again!
It's xkcd, not XKCD...
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.
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?
Two errors: not permitted and 404.
I bet the Windows timeline looks like the one for Primer.
"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.
-- 'The' Lord and Master Bitman On High, Master Of All
He specializes in data visualization and yet his charts are completely unhelpful. Splendid. Oh what's that? He's writing a research paper about this completely useless visualization method? Excellent.
"Dude, I came across this cool xkcd comic and decided to write some software to do just that."
Sure; we've tried every other fad that's come along, might as well try this one also.
Am I part of the core demographic for Swedish Fish?
Oh wait... :)
Could somebody please draw me a diagram for Mr Ogawa you have too much free time on your hands? Much appreciated.
Say what you want, these graphs look like some evil worms from below, kind of parasites that prey on the Deep Ones... Scary.
45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
...but XKCD pretty clearly was inspired by http://en.wikipedia.org/wiki/The_Wallchart_of_World_History (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.
-Styopa
I think the parent post was referring to this image: http://www.freeweb.hu/neuwanstein/primer_timeline.jpg. The original URL gives a 404, but I managed to locate the actual link by searching for the proper Blog article on that site for the date specified in the original URL.
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?
I am trolling
Isn't that basically a swim lane diagram?
Even with SVG!
Maybe Computers will never be as intelligent as Humans.
For sure they won't ever become so stupid. [VR-1988]
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 ....
Puteulanus fenestra mortis
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.
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 differently you probably need to do it in the browser. Either way there's really no reason to make it part of the same application, this one is "done".
Live today, because you never know what tomorrow brings
http://xkcd.com/657/large/
*shrug* Had to try it.
GW Basic, etc.......
Sounds like an excellent design tool!
I understand that the first image from the so-called 'ex kay see dee' world wide web location is referring to popular videograph features that are enjoyed by the younger generation these days, but what is the second link showing? More videographic material? I suspect that it must be a visioning of masterpieces such as 'Cum Guzzlers 2' and 'The More The Merrier 8', including the scene with all of the actors and actresses together in the forest glade (where all the lines in the linked image come together), and including that scene with the two leading ladies and that unfeasibly well hung gentleman.
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.
Rethinking email
Try to graph that one for me batman.
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.
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 that ls keeps receiving updates to this day.
Okay seriously I've just run out of pointless things to say.
Or qmail for that matter.
this is hilarious, awesome, not so untrue, just as cynic as I like it to be
thanks
ls is boring, they should add a feature "ls --im-feeling-lucky" to list a random directory to add some spice back into it.
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.
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 ... ... (think about profit and all round cleverness) .... .....
2. write about it on interwebs
3.
4.
5.
6. errr?
7.
8. !profit
8a. because lots of slightly older nerds have seen it all before.
8b. and see you for the young whipper-snapper that you are, wee laddie.
You should also check out Gource, a very cool software version control visualization tool. http://code.google.com/p/gource/. Here is a video I made using it: http://www.youtube.com/watch?v=77GLamoVtiU
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.
>> Standing on head makes smile of frown, but rest of face also upside down.
Just because the movie is out of order doesn't make the storyline graph particularly hard. In fact, after watching the movie once or twice you're already picturing the graph in your head.
Instead, try doing something like the "Back To The Future" series; characters meetings change based on the revision of history, characters loop back to see themselves, the same encounters happen with different generations of the same family.
Now you're thinking with portals.
What happened to.....
PostgreSQL:
tgl
petere
Apache: ...and all the others I've missed.
stoddard
slive
wrowe
Technically, you misspelled xkcd. Check the about page on the website.
Huh, thanks. Original link still works for me, but probably someone trying to break the internets with URL referral checks or something. .. Or just trying to break hotlinking ^_^
If only I could go back in time and make things right... there must be some movie about that or something...
I agree that it was well executed, but a few issues leapt out at me so fast that it kind of killed the humor of the thing. Saruman's path ends at Isengard. Ugh. Yes, I know the movie only vaguely resembled the books, but it still irks me every time I'm reminded of it.