[Mailman-Developers] [GSoC 2012] Metrics
Stephen J. Turnbull
stephen at xemacs.org
Sat May 19 13:58:59 CEST 2012
George Chatzisofroniou writes:
> Author
>
> This model represents an author of the mailing list. It mostly keeps
> track of the number of postings and number of threads started. It has
> the following fields:
>
> - authorid – IntegerField
AFAIK every Django object has an internal ID. Why do authors need a
separate, human-unfriendly "authorid"?
> - authormail – CharField
Authors are people. They typically have names<wink/> and often
multiple email addresses. There may also be other information
(organization, etc) that is available from the headers.
> - totalmails – IntegerField
> - totalthreads – IntegerField
> - firstmsgdate – DateTimeField
> - lastmsgdate – DateTimeField
>
> MailingList
>
> This model counts the total number of postings and threads started.
>
> - totalmails – IntegerField
> - totalthreads – IntegerField
longestthread?
>
> Month
>
> Year
>
> Views
>
> To display the metrics the Django template system will be used. To
> output the charts i will create some custom tags. The three following
> views will be used:
>
> - General page – On top, there will be general metrics about total
> authors, total mails and total threads and below three charts (AJAX
> based)
"AJAX based" doesn't belong in the spec; it's an implementation detail.
> that represent number of posts per author, number of threads
> per author and mailing list’s yearly usage. Even below there will be a
> number of charts (equal to the number of years of list’s existence)
> that output monthly usage.
Why multiple charts? If you can afford a 640x480 chart area, with 4
pixel wide bars you can have 160 months > 13 years in one chart. I
personally wouldn't hesitate to go to pixel width bars, which gives
you > 53 years. I don't think people will be looking at charts for
precision, but rather to get an overview.
> At the end, there will be tabular data representing the authors
>
> - Author page – Each user will have his own page with his own metrics.
>
> Django Admin page – A ‘Generate’ button will be added to the Django admin page.
> Settings
>
> The Django app should handle the following configuration parameters:
>
> - Host – Message store data host
> - Port – Message store data port
> - Masking – A multi-state variable (None, abbreviated, full) for
> masking email addresses at the results (we don’t want the emails to be
> spammed)
(1) If at all possible, this should be inherited from the list
configuration (DRY). It's not useful if the addresses are
available from the archives or by subscribing to the list.
(Actually, a really sophisticated spammer might want to attack by
spoofing frequent posters on the assumption they're more trusted
and more read, but that seems second-order to me.)
(2) It would be preferable if authors could supply nicknames, full
names, or avatars for this purpose.
> Interface to the Mailman core
>
> - Metrics class
>
> - Generate class
More information about the Mailman-Developers
mailing list