Google Summer of Code 2006 proposal
Author
Name: Radosław Zieliński
E-mail: radek@pld-linux.org
- Jabber: rz @ jabber.org
I'm a CS undergraduate at the Witelon University of Applied Sciences in Legnica, Poland.
Project
Subject ID: spamassassin-httpd-spamd
ASF project: SpamAssassin
- Summary: Finish up and polish the Apache::SpamD httpd mod_perl module.
Description
The aim of the project is to implement spamd on top of Apache, as a mod_perl module, reusing Apache features where possible; namely:
- process management
- IO handling
- SSL
connection persistence (if consensus in bug 4550 is reached)
...and possibly others.
Deliverables
- Working replacement for spamd, as compatible as possible (excluding, for example, switching UIDs).
- Detailed documentation, including design overview, setup instructions and security discussion.
- Performance comparison against spamd.
Approach
Writing simple working implementation, testing with different MPMs, reviewing different virtual user concepts, designing configuration system, implementing it, considering possible extensibility requirements, implementing hooks. Review. Testing different setups, performance. Writing documentation.
Approximate schedule
May |
exams |
Jun 02 - Jun 10 |
basic implementation, getting familiarity with SpamAssassin internals |
Jun 11 - Jun 30 |
testing, designing and implementing detailed needs |
Jul 01 - Jul 20 |
verification, further testing, bug fixing |
Jul 21 - Jul 31 |
testing performance, starting work on documentation |
Aug 01 - Aug 21 |
documentation, polishing |
General experience
Programming
~6 years of experience as Perl programmer, fluency with C, intermediate level with C++ (including basic STL knowledge, but no other libraries), basic Python and PHP.
UNIX
~7 years as Linux user, including ~4 years as PLD Linux Distribution developer (mostly dealing with Perl and its modules) and ~3 years as a system / network administrator (including mail server administration).
SpamAssassin
I've been using it since ca. 2002, have good understanding of mail processing problems (I wrote a MIME parser once), spam detection process and technologies involved.
Additional
Relational databases as designer and administrator (small and medium sized databases), experience with PostgreSQL and MySQL.
Decent Apache / mod_perl knowledge (however, very little experience with version 2.x as developer).