Workaround for Mailman list footer sent as attachment

Summary: The popular open source mailing list software GNU Mailman does not play well with the popular mail client Thunderbird running under the German version of the popular operating system Windows. When you send a message to a Mailman-managed list, the list footer may be included as an attachment ("MIME part") rather than appended to the message. Mailman developers deny responsibility for (solving) the problem.

The short story is that even if your mail client sends a plain text message, but it happens to be in a different character encoding than the ISO-8859-1 encoding expected by Mailman, the footer will be attached improperly. For German Thunderbird/Windows, you can change the default encoding for outgoing messages from ISO-8859-15 (German with Euro) to ISO-8859-1 (German) to work around this problem. The option that you should change is "mailnews.send_default_charset" in Advanced preferences (also accessible through about:config).

The problem is not solved once and for all by the above workaround, as it depends on the configuration of each sender's mail client (but not each recipient's mail client). However, the workaround is sufficient if you use the mailing list for one-to-many communication.

I'll spend the rest of this article dissecting the problem on a more general level, as it seems like a nice example for discussing some implicit differences between the worlds of professional and amateur software development (aka work vs. play).

The problem is a special case of an old and well-understood issue, elaborated at length in the FAQ by the Mailman developers. Unfortunately, the four solutions proposed there are all unsatisfactory (my comments in italic):

  1. Configure Mailman to remove the msg_header/msg_footer. But I want this footer to appear! Essential feature!
  2. Configure Mailman to strip all HTML and MIME formatting and send out all messages as text-only (text/plain). I've already done that, and it didn't help.
  3. Get everyone to change the MUA they use to one that is more HTML/MIME-aware. Yeah, dream on.
  4. Live with the problem. Come on guys, is attaching a few lines of ASCII text to a text-only email really so difficult?

The answer to the last question might be: "Yes, if you want to make it work universally". But users don't care about what works universally, they care what works for them, out of the box. The developers' standpoint is an example of a more general behavioral pattern common among open source programmers (as I know well from my own experience as the volunteer maintainer of EPIC). What we, the developers, are saying is, in order of increasing detail:

  • Don't bother me.
  • Works as designed!
  • You have no idea how complicated this code is and how much time we spent on it already.
  • Solving this "little" problem of yours would break n different exotic use cases of which you're completely unaware.

Of course it would be more up-front to say:

  • Oops, we screwed up. But we are lazy/not in mood to fix it for you. If you don't like it, find a better product/service. Sorry.

...which is quite a legitimate reply for a development-is-my-hobby-and-you-are-not-my-customer type of project.

In a professional setting, the developers answer to the paying client. Either a fix or a satisfactory workaround must be delivered on time, no matter whether it seems convenient and aesthetically pleasing to the developers and whether the blame for the problem lies in our code or elsewhere. We are hired to shield our clients from this kind of deliberation and the only factor that we might call to our rescue is whether the client's request seems to be a valid business requirement without conflict with her other priorities. Being able to send mails using Thunderbird and see footers properly attached by Malman certainly meets these criteria.

No comments:

Post a Comment