aboutsummaryrefslogtreecommitdiffstats
path: root/admin/www/devs.ht
diff options
context:
space:
mode:
Diffstat (limited to 'admin/www/devs.ht')
-rw-r--r--admin/www/devs.ht93
1 files changed, 93 insertions, 0 deletions
diff --git a/admin/www/devs.ht b/admin/www/devs.ht
new file mode 100644
index 00000000..937a6af9
--- /dev/null
+++ b/admin/www/devs.ht
@@ -0,0 +1,93 @@
+Title: Mailman Developer Resources
+Links:
+Other-links:
+ <h3>Developer Exits</h3>
+ <li><a href="http://sourceforge.net/projects/mailman">SourceForge Project Page</a>
+ <li><a href="http://www.zope.org/Members/bwarsaw/MailmanDesignNotes/">Mailman Wiki</a>
+ <li><a href="http://www.zope.org/Members/bwarsaw/MailmanDesignNotes/MailmanThreePointOh">Mailman 3.0 Wiki</a>
+ <li><a href="http://mail.python.org/mailman/listinfo/mailman-developers">mailman-developers list</a>
+ <li><a href="http://demo.iuveno-net.de/iuveno/Products/ZMailman/">ZMailman</a>
+
+<h3>Developer Resources</h3>
+
+If you're the kind of person who loves to get elbow deep in code,
+there are lots of opportunities to dig into Mailman. You may want to
+find a project on our Mailman
+<a href="todo.html">TODO list</a> or on the
+<a href="http://www.zope.org/Members/bwarsaw/MailmanDesignNotes/">Mailman
+design notes wiki</a>. Because Wikis are intended to be
+collaborative, you're free to contribute to this page in true Wiki
+fashion. You will also definitely want to subscribe
+to the <a href="http://mail.python.org/mailman/listinfo/mailman-developers"
+>mailman-developers</a> mailing list.
+
+<h3>SourceForge Project Page</h3>
+
+Developers should start with the
+<a href="http://sourceforge.net/projects/mailman">Mailman project at
+SourceForge</a>. All patches and bugs should be submitted here so
+they won't get lost, although it is also requested that you inform the
+mailman-developers list about your submissions.
+
+<h3>IRC</h3>
+
+Some of the Mailman developers also occasionally hang out on the
+<em>mailman</em> IRC channel at openprojects.net, though attendance
+has been spotty lately.
+
+<!--table-stop-->
+
+<h3>Future plans</h3>
+
+Now that Mailman 2.1 has been released, I want to start thinking about
+what will be in <a
+href="http://www.zope.org/Members/bwarsaw/MailmanDesignNotes/MailmanThreePointOh">Mailman
+3.0</a>. I intend to use the wiki for most design artifacts, and the
+mailman-developers mailing list for most discussions. The items that
+are high on my list (which is by no means complete or definitive)
+include:
+
+<ul>
+<li><b>Consolidated user database</b> -- A user should have just one
+account for every mailing list they are members of at a site, and they
+should be able to manage all their options through this account.
+It should be possible to integrate these databases with a site's
+existing user management system to reduce duplication of data and
+effort.
+
+<p><li><b>Unified template system</b> -- Mailman has a somewhat fractured
+and inconvenient templating system, using both a homegrown HTML object
+model in Python and coarse templates filled in with data at rendering
+time. It can be near impossible to change the look and feel of the
+administration pages, and a small change to the u/i of other pages
+requires updates in all supported languages. I want to use a
+templating system like
+<a href="http://dev.zope.org/Wikis/DevSite/Projects/ZPT/">ZPT</a> or
+<a href="http://www.mems-exchange.org/software/quixote/">Quixote</a>.
+Actually, I plan to generalize the web interface so that many different
+templating systems could be used, although we'll pick one to ship by
+default.
+
+<p><li><b>A Real Database</b> -- Mailman uses an inefficient persistency
+system based on Python pickles, and every mailing list has its own
+pickled state. This has several disadvantages, including poor
+scalability, difficulty in doing cross-mailing list operations, and
+the virtual host limitation on list names. Mailman 3.0 will use a
+real database, perhaps based on
+<a href="http://www.zope.org/Wikis/ZODB/">ZODB</a> or
+<a href="http://www.sleepycat.com">BerkeleyDB</a>. Again, the goal is
+to generalize the interface to the backend database so that others can
+be used, but choose one and ship it by default.
+
+<p><li><b>Component Architecture</b> -- Zope3's
+<a href="http://dev.zope.org/Wikis/DevSite/Projects/ComponentArchitecture/"
+>component architecture</a> provides some very nice organizational
+tools and software development methodologies. We'll be adopting many
+of these for Mailman 3.0, which will allow us to do the kinds of
+templating and database generalization described above.
+</ul>
+
+Stephan Richter has let an effort called
+<a href="http://demo.iuveno-net.de/iuveno/Products/ZMailman/"
+>ZMailman</a> for integrating Zope and Mailman. I consider this a
+proof of concept of some of the ideas outlined above.