% chaos seminar talk about masqmail
%
% markus schnalke <meillo@marmaro.de>
% since 2009-02-24


\documentclass{beamer}

\title{masqmail}
\author{markus schnalke}
\date{2009-03-09}

\usepackage[utf8]{inputenc}
\usepackage{url}
\usepackage{graphicx}
\setlength{\parskip}{2.0ex plus 1.0ex minus 0.5ex}

\newcommand{\secframe}[1]{
	\section{#1}
	\frame{ \vfill\vfill \centerline{ \huge #1 } \vfill }
}

\newcommand{\ft}[1]{
	\frametitle{#1}
}

\newcommand{\oneline}[1]{
	\frame{
		\vfill\vfill
		\centerline{\textbf{#1}}
		\vfill
	}
}



\begin{document}


\frame{

\vspace{8em}
\begin{center}

{\huge\bf masqmail}

a mail transfer agent for workstations and small networks

\vspace{6em}

{ \tiny
markus schnalke \textless{}meillo@marmaro.de\textgreater{}
}

\end{center}
}



\secframe{about me}


\frame{\ft{markus schnalke}

\textbf{past}

Business Information Systems\\
at University of Applied Sciences, Ulm

Diploma Thesis about masqmail


\textbf{future}

Master in Informatics\\
here at University, Ulm

}


\frame{\ft{I am interested in}

Unix Philosophy

suckless software

Free Software

Debian

}




\secframe{this talk}


\frame{ \ft{overview}

1) prerequisites (xx\%)

2) about masqmail (xx\%)

3) the thesis (xx\%)

4) help me to help masqmail (xx\%)

}








\secframe{Email? MTA? ...}


\frame{\ft{What are MTAs}

MTA = Mail Transfer Agent

the post offices of email

definition: FIXME

}


\frame{\ft{mail agents}

\begin{center}
\includegraphics[width=0.8\textwidth]{fig/mail-agents.eps}
\end{center}

}


\oneline{questions?}






\secframe{about masqmail}



\frame{ \ft{what is masqmail}

an MTA

a small one

one for special setups

}


\frame{ \ft{masqmail's niche}

non-permanent online connections

over multiple providers

especially for workstations and small networks

also notebooks

}


\frame{ \ft{history}

written by Oliver Kurth

1999 -- 2003

GPL

about 9\,000 SLOC

}


\frame{\ft{guessed}

initially written to use masqdialer-controlled online connections

thus: source of the name (``masq\dots'') (not ``\dots qmail'')

}



\frame{ \ft{masqmail today}

development stopped in 2003

not maintained

even its website is down

but included in Debian, Ubuntu, Arch, Mandriva, FreeBSD

}


\frame{ \ft{value of masqmail}

covers a niche

has unique features

has users!

}


\frame{ \ft{problems of masqmail}

no further development

unfixed bugs

emailing has changed

}


\oneline{questions about masqmail?}
















\secframe{when I meet masqmail}


\frame{\ft{using unmaintained software}

Fall 2007: started to use masqmail

Spring 2008: realized it is unmaintained in Debian

A situation to be changed ... but by whom?

... me? No!

}


\frame{\ft{diploma thesis}

Summer 2008:

problem: find a topic for the diploma thesis

The great idea: solve two problems

use the diploma thesis to revive masqmail

}


\frame{\ft{advising professor}

Professor Sch\"affter

thanks!

}




\frame{\ft{motivation}

\textbf{motivation}

- for myself

- for the community

\textbf{thus}

- in English

- free available

}



\frame{\ft{guiding principle}

\begin{center}
\it
Do what you think is interesting,\\
do something that you think is fun and worthwhile,\\
because otherwise you won't do it well anyway.

---Brian~W.\ Kernighan---
\end{center}

}







\secframe{the thesis in short}



\frame{\ft{planned was}

- purpose and structure of an MTA/of masqmail

- security analysis

- code improvements

- documentation, test, distribution

With the goal to release a new version and get it into Debian

}


\frame{\ft{however, it resulted in}

- (introduction)

- market analysis

- mail transfer agents

- masqmail's present and future

- improvement plans

Became pretty theoretic (I don't worry)

}







\frame{ \ft{ch01: introduction}

general prerequisites

the masqmail project

value and problems of masqmail

\textbf{$\Rightarrow$ reasons to do this thesis}

}



\frame{ \ft{ch02: market analysis}

classification, life cycle, and trends of electronic communication

SWOT and trends for email

\textbf{$\Rightarrow$ show that email is expected to survive}

}


\frame{ \ft{ch03: mail transfer agents}

classification of MTAs

masqmail's competitors

short comparison

\textbf{$\Rightarrow$ provide knowledge for following chapters}

}




\frame{ \ft{ch04: masqmail's present and future}

the goal (revive masqmail)

requirements

\quad\quad fulfilled requirements

\quad\quad work to do

ways for further development

result

\textbf{$\Rightarrow$ the core of the thesis: a plan to revive masqmail}

}



\frame{ \ft{ch05: improvement plans}

more detailed descriptions of the work tasks

\textbf{$\Rightarrow$ recommendations how to do the proposed changes}

}


\oneline{questions?}












\secframe{in detail: ch03 MTAs}



\frame{\ft{MTAs}

- relay-only MTAs (forwarders): nullmailer, ssmtp

- groupware: Lotus Notes, Exchange, opengroupware.org

- ``real'' MTAs: sendmail, exim, qmail, postfix, masqmail

}



\frame{\ft{market shares}

FIXME

}



\frame{\ft{why not sendmail}

- too large

- too complex

- structurally insecure

- simply obsolete

}

\frame{\ft{why not exim}

- too large

- designed for always online hosts

}

\frame{\ft{why not qmail}

- outdated

- designed for always online hosts with fast connections

}

\frame{\ft{why not postfix}

- too large

- not designed for masqmail's scenario

}

\frame{\ft{in summary}

- other MTAs are bad substitutes for masqmail

- though they seem to be generally able to be substitutes

}


\oneline{comments and annotations?}















\secframe{in detail: ch04 present and future}


\frame{\ft{functional requirements}

}

\frame{\ft{non-functional requirements}

}

\frame{\ft{architectural requirements}

}

\frame{\ft{fulfilled requirements}

}

\frame{\ft{work to do}

}


\frame{\ft{further development}

}


\frame{\ft{the result}

``one fits all'' is not possible

hence: different strategies for different goals

short-term goal: keep masqmail usable\\
\quad\quad$\rightarrow$ improve existing code

long-term goal: make masqmail future-proof\\
\quad\quad$\rightarrow$ recreate it from scratch

disadvantage: more work

}









\secframe{in detail: ch05.1 existing code}




\frame{\ft{masqmail's code base}

C

~ 9,000 SLOC

}









\secframe{in detail: ch05.2 new design}

\frame{\ft{FIXME}

}






\secframe{HELP!}


\frame{\ft{FIXME}

}







\frame{
	\vfill\vfill
	\centerline{\textbf{Thanks for your attention}}
	\vfill
}


\frame{\ft{links}

--all urls--

}




\frame{ \ft{software used}

Debian GNU/Linux

\LaTeX\ with the beamer classes

Vim, latexmk, and Mercurial

\vfill

{\scriptsize The slides are available on \url{http://marmaro.de/docs} \hfill 2009-03-09 }

}




\end{document}





\url{http://ulm.ccc.de/ChaosSeminar/2009/03_masqmail}
