In search of a modern way to hold discussions online
The OpenStack community decided at the Design Summit to create new lists and consolidate all of them on a new service so I decided to lay down the specifications for the new system following the desiderata from developers and users. The basic need is to allow developers to discuss freely using the tool they prefer (email clients, in this case). I as community manager need also to be able to measure discussions and allow easily for new developers and users to join the conversations. The desiderata for the messaging system are:
- Must use email messages as primary mean of communication
- Must allow tagging/topics for easy inbox filtering
- Must be easy to manage (dealing with spam, delivery, moderation, etc)
- Must have good looking archives, skinnable, with search capabilities and SEO friendly
- Must allow measuring activity, natively or with tools like mlstats
- Nice to have:
- SSO integration with OpenID and more
- Post new message (reply or start a new thread) via web
- Offer archive via RSS
With these in mind I started looking into Mailman, the typical answer for mailing list management. The software is known and solid although the latest stable release is old. Mailman 2 has the advantage of familiarity: we know how it works and its limitations. Mainly I know the limitations: the web UI is scary and I can’t find a way to teach Firefox’s password manager to save the passwords for each list (it associates the password to the domain, not the full url, so I can only have one password associated to lists.openstack.org –am I doing something wrong?), the default archives are also ugly and primitive forcing us to use other archivers, like Markmail.
Mailman 3, the upcoming release, is … not there yet. I could only see mockups for the new web management UI (called Postorius, is a django app, a client of the new Mailman REST API) and it seems that Mailman 3.0 will be shipped without an official archiver.
I looked at Sympa as an alternative to Mailman, since Rackspace uses it internally. It has most of the features we need, including the nice-to-have but it seems to be lacking the Topics (although, we should say that we’re not using the Mailman topics feature at the moment anyway). I don’t think that mlstats supports Sympa and I’m not sure about its tracking capabilities (but it stores lots of metadata in a SQL database so it shouldn’t be too hard to get information from it).
Since the mailing list archives I know all look too ugly, I expanded my search to forum software hoping that in the past years there was some progress in it. The only new thing I found is Vanilla Forums, a GPLv2 forum engine. It mixes features of the old bulletin boards format with the newer question/answer concept, embracing tags and categories. The first page of Vanilla has more meaningful content than the silly topics seen in most bulletin boards and in general I found Vanilla having a better UI than most forum software. The hosted version of Vanillaforums sports also a nice integration with email but there are no plans to release such feature under the GPLv2. The view of a thread with many responses is not exciting though: it has no hierarchy, failing at readability like all bb/forum software … and I think it’s a crucial feature that enables following long discussions. This deserves more thoughts: I know Twitter gave up trying to represent threaded discussions in a single page (but Twitter was never meant for discussions), identi.ca used to have the conversation view with grades of colors but got rid of it, Gmail doesn’t bother either and shows conversations as flat, time based sequence of messages: is it just too difficult to thread discussions like any email client used to do or what else is going on?
To me it seems that Mailman is still the best we can do at the moment even if it leaves me in a pretty sad state, stuck in 2001. I would start looking into Mailman 3 and expand the search to an archiver that we can host (like CSLA) but Mailman 2 is probably the best we have at the moment. Other thoughts?