Hacker News new | past | comments | ask | show | jobs | submit login
Gource.io – a software version control visualization tool (gource.io)
256 points by fortran77 on Nov 17, 2019 | hide | past | favorite | 32 comments



Gource is a really cool visualization tool. Here's a Gource visualization of development of the Python programming language (C Python implementation, aka CPython): https://www.youtube.com/watch?v=cNBtDstOTmA Here's a collection of Gource visualizations: https://github.com/acaudwell/Gource/wiki/Videos

If you create your own visualizations, I strongly recommend that you automate doing it as much as possible. For example, if you process data first, use a script to automate processing the data. You'll need to give Gource various options, and there are a lot of options; store options in its config file or scripts.

Also, if you create a Gource video, I strongly recommend adding some music or at least an audio commentary. If you add music, make sure it's legal to add; the safe route is to use music released under open licenses such as Creative Commons Attribution (CC-BY) CC0 Public Domain Dedication (CC0). Beware of the "non-commercial use" licenses - your releases might count as "commercial" even if you don't think they do (talk to a lawyer if you want to go down that path). A great place to start for Gource music is audionautix.com ( https://audionautix.com/ ), which has released lots of music under the Creative Commons Attribution 3.0 Unported License; you can select from lots of different styles and get some great options. "Improving Gource Videos with Background and Audio" ( https://fransdejonge.com/2018/02/improving-gource-videos-wit... ) has some tips and instructions.


Hmm, why do you recommend adding music? This is a pet peeve of mine, many videos would be better without attaching unrelated music to them. Less processing is better.


> Hmm, why do you recommend adding music?

For the human. Videos are way more interesting to most people if there's an audio track of some kind. Anyone who doesn't like the sound can mute it.

Less processing really isn't relevant. CPU is cheap. Yes, audio does take some additional space & network, but it's practically nothing compared to the space required for a video. So if you're making a video anyway, add some sound and make it interesting for the human who's viewing it.


Not really picking sides but the one thing I hate with music is that if I for any reason would not like to listen to it. Maybe I'm already listening to music - maybe I don't have my headphones on and don't want to disturb anyone else (or don't have speakers). Or I'm on a laptop/phone where the speakers are just terrible.

If I press the mute button I will not know if I'm missing out on some important commentary.

There should be a standardized way to convey that the audio is optional and doesn't directly relate to the video. To be fair this also applies to videos without sound (how am I supposed to know there is no sound unless I've watched the whole thing?) - though with the advantage that one can leave it unmuted and at least detect if someone starts talking.


I like the idea of having some standardized way of noting that. The indicator would have to be short and clear. Any ideas? Maybe "Music-only audio"?


Because you can!

There's always the mute button. Gource would be mute by default, so you're not losing anything.

I actually think the music in that Python vid is awesome.


Because it can add something. Here’s a gource animation from nearly a decade ago, when we ship-of-theseused an ecommerce platform, and did a complete rewrite. I actually ended up forcing the output day length to match the music.

https://youtu.be/IxKveFcXsAM


I like the music. And you can mute it. Everyone wins!


Notch released a video of the Minecraft development history, that's when I first heard of Gource: https://www.youtube.com/watch?v=zRjTyRly5WA


It would be cool if Gource could generate the audio track for you based on the commits in the repository.


Ha, last year I have created a video which showed 7 years of GitLab Community Edition history in 2.5 minutes and put some music from https://www.bensound.com behind it. It is definitely fun to analyze bigger projects. Maybe I should do the Linux Kernel, but my fear would be rendering that could take quite long.

https://www.youtube.com/watch?v=Z6ltmzQLO6k


Gource is a really cool visualization tool, and although it's originally intended to show software development over time, it's useful for showing other community works over time. Here is a visualization of the development of set.mm (the Metamath Proof Explorer (MPE)), a set of formalized math proofs that's been developed over time with (now) 48 people:

https://m.youtube.com/watch?v=XC1g8FmFcUU

I find these visualizations great to help show people how open source software contributions work. Most people get the idea that collaboration can result in amazing things, but there is nothing like a visualization actually showing it in action.


I once ran it on the one year old codebase of a startup I got a job at.

That guy rewrote the whole code base every month.

New clusters growing and getten teared down all the time.


Where I worked we used this to display other tree based data, was an interesting exercise. As long as you can translate into their log formats it was really simple to set up. Was more eye-candy to be honest.


> https://www.youtube.com/watch?v=MkJxlKD2bjk

The first time I saw Gource in action was in a video that visualized the history of the Linux kernel. Really interesting data, especially when paired with key headlines about the project.


I'm old! I remember I toyed with https://code.google.com/archive/p/codeswarm/ before gource was a thing


Cool seeing this tool come up on HN. 5 years ago when I was getting into programming I came across this and made a visualization for one of my favorite libraries at the time, SFML (https://www.sfml-dev.org/)

https://vimeo.com/100557603


It's pretty, but I can't think of anything I'd use it as a "tool" for.


Coworker used it to generate a visual history of all the changes a departing colleague had made in his time at the company. Put it up on a wall at his farewell party, was a nostalgia trip for those who remembered many of the older directory names that popped up (and helped drive home how much of a contribution this single dev had made early on).


Is there a binary available for this? Download on the site seems to just be source.

Currently running `./configure` and going through the dance of working out what my package manager calls each of the dependencies one at a time with no idea of progress (has anyone solved this problem?).


Its available on the package managers of most linux distros.


Yes they have, the best solution is called Cargo.


So someone upload many videos generated with this tool to youtube. I was really impressed when I stumpled upon it.

https://www.youtube.com/watch?v=s_mSedHiTk0


Totally unrelated may be, I have a one plus 7 pro with the front camera that pop's up, when I opened the link it just popped up and went down. This is the first time that is happening. Weird.


Are you using Firefox? Because it happens to me too with some websites, and it really creeps me out.



Found the related software for web access logs to be more impressive! https://logstalgia.io


I've never seen this before, but it looks super interesting. Seems like it's been around for a while though.


Do you know which library (or similar one) is used for this visualization?


It's basically the same as a d3 force layout.


If the title wouldn't include a description of what it is I would be very confused. There is nothing on the website that actually say what it is.


> Software projects are displayed by Gource as an animated tree with the root directory of the project at its centre. Directories appear as branches with files as leaves. Developers can be seen working on the tree at the times they contributed to the project.

I thought that was descriptive enough.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: