Here is my blurb of the day. It is about communication media in Opensource development.
Yesterday we talked on #kde-freebsd about the k-f teams release process. The consensus was, that we need to get more people into the team. Lofi has posted a job advertisement the Mailinglist. He said that feedback has been very low.
I pointed out, that in my opinion too much communication is done via IRC, and most people (including myself) don’t have the time to be on IRC the whole day. If there was actual more ports-preparing related traffic on the Mailinglist, more people would get involved.
I was opposed by nearly everyone, the main point was, that if all communication was done via the mailinglist, we would still be working on KDE 3.2, since communication via mailinglist is extremly slow and inefficient.
So Question to the reader. If you are interested in an Opensource Project. Would you:
a) Join the IRC channel and talk to the developers directly
b) start lurking on a mailinglist.
I can only tell from my own expierience. I maintain around 30 ports. It the project has a Mailinglist, I usually join. If it has a developers list, I browse the archive for interesting threads. I have one port that has only an IRC channel for getting help, talking to the developers and stuff. I have had a lot of problems, getting the attention of the developers. On third of the times I joined the channel they weren’t there or sleeping. Another third, they are debating someone else’s bug or other important development things, and the other third they are in an offtopic debate, or drunk, or tired or whatelse. Another problem is to determine if someone on IRC is one of the developers or just a troll. On Mailinglists, people can be identified by Email addresss (FreeBSD.org -> FreeBSD developer, KDE.org -> KDE member) or they have signatures telling everybody what they work on.
I admit I am an IRC addict, I am usually in at least three channels, and nearly all the time I am sitting at a computer I have an IRC window somewhere. It is the fastest way of communication with someone on the other side of the globe.
It is a nice environment for getting someone to know. BUT I usually hang out in my favorite chans, because I know whom I talk to, and the signal2noise rate is okay. I join a different channel only if someone I know is on there, but not because someone unknown invites me to join.
IMHO the main disadvantages of IRC in regard to serious communication/development are the real-time (“XY is currently sleeping, are we waiting for his review, or are we just going ahead?”), the missing archives (Who wants to ready IRClogs from 10 years ago? Who wants his private IRC talk somewhere on the web?) and the noise rate (There are so many idiots on IRC, usually every channel has at least one).
People say mailinglists are slow. Yeah, usually people check email only every 10 to 30 minutes, so you can’t expect immediate feedback. But there are major advantages, like threads and subjects which enable you to talk about two different things at the same time without getting confused. Email-addresses, which offer the possibility to ask questions after years. And with Attachments you can attach patches directly to the communication.
Is the slowness of mailinglists really a killer argument? IMHO no, we have all the time in the world, since we don’t need to sell our software. So I think that Mailinglists are superior.
What is the best way to combine IRC and Mailinglists in Opensource Development? I think it is a good idea that it should be possible for people who are not on IRC to follow the development. This means: Everything that should be reviewed, like patches, design documents, TODO lists etc. should be posted to the mailinglist. Discussions could happen on IRC, but decisions should be made on the mailinglist.
My favorite example: FreeBSD. FreeBSD has no official IRC channel. But of course you can meet a lot of developers on channels like #bsdcode. FreeBSD newcomers usually start following the mailinglist, and writing bug reports. If they are interested they usually start talking to developers on IRC.
Please comment if you think, this makes sense, or if you think i am on the wrong way.