I enjoy lurking in obscure IRC channels and often have been amazed how many people I met there I already knew from some other channel. Today, this happened again, so I just had to map all language channels I could find on Freenode and make a diagram of their relationships.
I tried to find all language-specific general channels, and came up with these: #perl, ##c, #python, ##c++, #ruby-lang, #haskell, #bash, #lisp, ##java ###javascript, #perl6, #scheme, #erlang, #ruby, #latex, #lua, #d, #asm, #zsh ##tcl, #ocaml, #fpc, #io, #awk, #sed, #forth, #scala, #ada, #dylan, #sml, and #!/bin/sh.
I also added #rubyonrails, #concatenative, #esoteric, #oasis, #haskell-blah, #ruby-de, #camping, and #rack, which are not really general language channels but interesting to see.
After frustration with R (I first wanted
to make a kind-of heatmap), I decided to use
GraphViz’s fdp
. Here’s the preview of the
map (click for fullsize, beware: 1833x2084px):
If you want to print it, there also is a PostScript version.
The font-sizes are logarithmic, legend for the edges:
- If 45% of the smaller channel are in the other channel, there is a bold line.
- If 25% of the smaller channel are in the other channel, there is a solid line.
- If 10% of the smaller channel are in the other channel, there is a dotted line.
Enjoy.
NP: Jeff Buckley—Lilac Wine