--- /dev/null
+\documentclass{beamer}
+%\documentclass[draft]{beamer}
+
+\usepackage[german]{babel}
+\usepackage[latin1]{inputenc}
+\usepackage{times}
+\usepackage[T1]{fontenc}
+\usepackage{url}
+
+\mode<presentation>{
+ \usetheme{Madrid}
+ \hypersetup{pdfpagemode=FullScreen}
+ \usecolortheme{albatross}
+ \useinnertheme[shadow]{rounded}
+ \usefonttheme{serif}
+ \usefonttheme{structurebold}
+% \beamerdefaultoverlayspecification{<+-| alert@+>}
+% \setbeamercovered{transparent}
+}
+
+\title[FTPTeam]{The Debian FTP Team}
+\subtitle{Masters, Assistants, Trainees \\ \alert{Motto: Fuck it! What could possibly go wrong?}}
+
+\author[Joerg Jaspert]{Joerg Jaspert \\ \texttt{joerg@debian.org}}
+\date{Cáceres, July 2009}
+
+\institute[DebConf9]{Debian Conference 2009}
+
+% \AtBeginSection[]
+% {
+% \begin{frame}<beamer>{Outline}
+% \tableofcontents[currentsection] %,currentsubsection]
+% \end{frame}
+% }
+
+
+\begin{document}
+
+\setbeamertemplate{navigation symbols}{}
+{\setbeamertemplate{background}{\includegraphics[width=\paperwidth]{background.jpg}}
+
+\begin{frame}
+ \titlepage
+\end{frame}
+
+\begin{frame}[allowframebreaks,allowdisplaybreaks]{Outline}
+\tiny
+ \tableofcontents
+\end{frame}
+
+\section{History}
+\subsection{Software / Hosting}
+\begin{frame}{History - Scripts}{\alert{Motto: Fuck it! What could possibly go wrong?}}
+ \begin{itemize}
+ \item Ian Murdock/Jackson makeshift scripts
+ \item Monolithic perl dinstall written by Guy Maor
+ \begin{itemize}
+ \item Not exactly secure: upload, shipit
+ \item Not even using PGP either.
+ \end{itemize}
+ \item Katie: a rewrite in python. Known as DAK.
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{History - Hosting}{\alert{Oh fuck, what just went wrong?}}
+ \begin{itemize}
+ \item Under a desk @ cmich.edu
+ \item First master.d.o by Bdale @ HP
+
+{\tiny It was an HP Vectra 486 tower system with 66mhz CPU upgrade, an
+ Adaptec 1740A EISA SCSI controller and two disk drives. A 330Mb
+ root disk and a 660Mb disk to hold the archive. Both were 5.25"
+ full-height drives. All the pieces came off pallets of materials
+ heading out for scrap. Before it left Bdale the archive disk got
+ swapped out for a 1.3Gb drive, also 5.25" full height scsi and a
+ cast-off heading for scrap.
+
+ The first machine to host .debian.org using Debian.}
+
+\pause
+
+ \item Moved to I-Connect
+ \item Then to Novare for several years
+ \item Then to Visi.Net, as 'ftp-master.d.o'
+ \item Relocated to above.net
+ \item Then to the HP DC in Ft. Collins
+ \item Currently at Brown.edu
+ \end{itemize}
+
+\end{frame}
+
+
+\subsection{Archive}
+\begin{frame}{History - Archive}{\alert{That guy impressed me and I am not easily impressed. Wow. BLUE Hair }}
+ \begin{itemize}
+ \item Architectures / Releases:
+ \begin{description}
+ \item[Bo] 1: i386
+ \item[Hamm] 2: + m68k
+ \item[Slink] 4: + sparc, alpha
+ \item[Potato] 6: + powerpc, arm
+ \item[Woody] 11: + mips, mipsel, hppa, ia64, s390
+ \item[Sarge] 11 (unofficial amd64 release)
+ \item[Etch] 11: + amd64, - m68k (there is a semi-official etch-m68k release)
+ \item[Lenny] 12: + armel
+ \item[Squeeze] ?: + kfreebsd-i386, kfreebsd-amd64, - arm, ...
+ \end{description}
+
+ \item Proposed Architectures:
+ \begin{itemize}
+ \item avr32
+ \item sh\{3,4\}
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\begin{frame}{History - Archive size}{\alert{Ganneff - if it goes wrong, we make it ``Fuck it what do we care?'', but dont tell anyone.}}
+ \begin{itemize}
+ \item Releases:
+ \begin{description}
+ \item[Buzz] 229Mb
+ \item[Rex] 306Mb
+ \item[Bo] 1.2Gb
+ \item[Hamm] 2.1Gb
+ \item[Slink] 4.1Gb
+ \item[Potato] 6.7Gb
+ \item[Woody] 27Gb
+ \item[Sarge] 57Gb
+ \item[Etch] 82Gb
+ \item[Lenny] 125Gb
+ \item[squeeze+X] 1Tb?
+ \end{description}
+
+\pause
+
+ \item Daily pushes:
+ \begin{description}
+ \item[2005] 200Mb up to 2Gb, average 1Gb. Once a day.
+ \item[2009] 1Gb up to 6Gb, average 2Gb. 4 times a day.
+ \end{description}
+ \end{itemize}
+\end{frame}
+
+\subsection{Team}
+\begin{frame}{History - Team}{\alert{sgran - the world B.G. (Before Ganneff)}}
+ \begin{itemize}
+ \item Ian Murdock
+ \item + later Ian Jackson, Bruce Perens, Bdale Garbee
+ \item Guy Maor takes over (moved to dinstall) [somewhere 1995/1996]
+ \item Richard Braakman and James Troup push in [July 1998] % <elmo> so 1998-07-09, looks like a good date for Richard + Me
+ \item James recruits Antti-Juhani Kaijanaho and Gergely Madarasz [Dec 1999]
+ \item Michael Beattie tricks his way in [August 2000]
+ \item Richard becomes inactive [August 2000]
+ \item Work on katie starts (named da-katie) [2000]
+ \item Anthony Towns joins [January 2001]
+ \item Guy becomes inactive [February 2001]
+ \item Ryan Murray is added [June 2001]
+ \item Randall Donald joins [November 2001]
+ \item Daniel Silverstone follows [August 2003]
+ \end{itemize}
+\end{frame}
+
+% Help from elmo for the dates:
+
+% From: Guy Maor <maor@debian.org>
+% Subject: Re: ftpmaster-y stuff
+% To: James Troup <james@nocrew.org>
+% Date: 21 Nov 1999 17:03:08 -0800
+
+% James Troup <james@nocrew.org> writes:
+
+% > I've started being a bit pro-active with ftpmaster stuff, e.g. getting
+% > Gorgo and Ibid on board and announcing it and stuff. I'm doing this
+% > on the basis that, you don't mind, and if you did you'd say. Of
+% > course this fails a bit miserably if you don't [say, that is], so
+% > please do tell me if I'm overstepping my bounds...
+
+% I trust you and Richard completely with the ftpmaster stuff. You have
+% the authority to do anything as far as I'm concerned.
+
+% ------------------------------------------------------------------------
+
+% Guy
+
+% From: Richard Braakman <dark@xs4all.nl>
+% Subject: Re: New ftpmaster (?) Michael Beattie (aka Omnic)
+% To: James Troup <james@nocrew.org>
+% Date: Wed, 16 Aug 2000 13:27:29 +0200
+
+% On Sun, Aug 06, 2000 at 10:29:27PM +0100, James Troup wrote:
+% > person... Omnic is excessively keen and seems to have lots of free
+% > time... unless you have any objections? I'll ask him to join the team
+% > in a couple of days.
+
+% No. In fact I'm almost writing my retirement notice now -- I'm just working
+% through the current pile of mail before sending anything.
+
+
+\begin{frame}{History - Team}{\alert{mhy - commit it (RE: team motto)}}
+ \begin{itemize}
+ \item Team restructured, Assistants role added [March 2005]
+ \item Joerg Jaspert and Jeroen van Wolffelaar join as Assistants [March 2005]
+ \item Kalle Kivimaa and Thomas Viehmann join as Assistants [February 2008]
+ \item Joerg Jaspert promoted to FTP Master [April 2008]
+ \item Anthony Towns and James Troup leave [April/May 2008]
+ \item Mark Hymers joins as Assistant [July 2008]
+ \item Frank Lichtenheld joins as Assistant [December 2008]
+ \item Thomas Viehmann resigned [December 2008]
+ \item Mike O'Connor joins as Assistant [January 2009]
+ \item Ryan Murray becomes inactive and leaves [March 2009]
+ \item Mark Hymers promoted to FTP Master [March 2009]
+ \item Kalle Kivimaa leaves [July 2009]
+ \end{itemize}
+\end{frame}
+
+\subsection{Present}
+\begin{frame}{The Team}{\alert{Me fail English? That's unpossible.}}
+ FTP Masters
+ \begin{itemize}
+ \item Joerg Jaspert - Ganneff
+ \item Mark Hymers - mhy
+ \end{itemize}
+
+ FTP Assistants
+ \begin{itemize}
+ \item Frank Lichtenheld - djpig
+ \item Mike O'Connor - stew
+ \end{itemize}
+
+ FTP Trainee
+ \begin{itemize}
+ \item Barry deFreese - bdefreese
+ \item You?!
+ \end{itemize}
+
+ Since April 2008 we almost always had people in the FTP Trainee role.
+\end{frame}
+
+\section{The roles}
+\subsection{FTP Master}
+\begin{frame}{FTP Master}{\alert{Don't you kids take anything. I'm watching you. I've got eye implants in the back of my head.}}
+The FTP Master role, unix group \alert{debadmin}, is ...
+ \begin{block}{(Lets cite Matthew Garrett)}
+ ... responsible for maintaining the infrastructure
+ required to support the archive. This takes the form of the scripts used
+ for processing uploaded packages, but also the flow of packages between
+ distributions.
+ \end{block}
+ \begin{itemize}
+ \item Keep the archive running
+ \item Keep the archive legal
+ \item Support the teams that depend on it (Release, Security, soon backports/volatile)
+ \item Keep the archive uptodate with the requirements of the project
+ \end{itemize}
+\end{frame}
+
+\subsection{FTP Assistant}
+\begin{frame}{FTP Assistant}{\alert{Ganneff - see topic. our motto. yeah.}}
+The FTP Assistant role, group \alert{ftpteam}, created 2005, allows
+additions of people to the FTP Team without having to hand out full FTP
+Master rights.
+
+It allows
+\begin{itemize}
+\item to process NEW,
+\item to handle overrides,
+\item to remove packages.
+\end{itemize}
+
+Thus the most common actions can be done but the possible damage that
+can happen by accident is limited.
+\end{frame}
+
+\subsection{FTP Trainee}
+\begin{frame}{FTP Trainee}{\alert{Kids, you tried your best and you failed miserably. The lesson is, never try. \tiny \\ Hello i18n cabal. :)}}
+The FTP Trainee role, group \alert{ftptrainee}, was created in 2008 to
+allow easy training and testing of future team members.
+
+\begin{itemize}
+\item Initially called ``slave\_NEW''
+
+\pause
+
+\item 6 people trained so far
+\item 2 promoted to Assistants
+\end{itemize}
+
+Trainees can look at NEW and do the usual package checks, but they can
+not actually accept or reject a package. Instead they leave a note,
+which an Assistant or Master reads and acts on.
+\end{frame}
+
+\section{The job}
+\subsection{Archives}
+\begin{frame}{Archives}{\alert{You can't keep blaming yourself. Just blame yourself once, and move on.}}
+ \begin{itemize}
+ \item The main archive, ftp.debian.org
+ \item The security archive, security.debian.org
+ \item (Soon) The volatile archive, volatile.debian.org (integrated
+ into main archive)
+ \item (Soon) The backports.org archive, www.backports.org (-> backports.debian.org)
+ \end{itemize}
+\end{frame}
+
+\subsection{Removals and Overrides}
+\begin{frame}{Removals and Overrides}{\alert{mhy - I was upset to discover (via grepping my logs) that I actually said that quote in one of the subtitles verbatim}}
+ \begin{itemize}
+ \item Removals
+ \begin{itemize}
+ \item (Semi)-Automagic via cruft-report
+ \item Manual, with help from a nice html page
+ \end{itemize}
+ \item Overrides
+ \begin{itemize}
+ \item Priority / Section
+ \item Override disparity
+ \item Currently by mail, should be changed to using BTS
+ \end{itemize}
+ \end{itemize}
+\end{frame}
+
+\subsection{NEW}
+\begin{frame}{NEW}{\alert{mhy - Ganneff airlines: departing from a window near you}}
+
+NEW checking is about three things. In order of priority:
+\begin{itemize}
+\item trying to keep the archive legal,
+\item trying to keep the package namespace sane,
+\item trying to reduce the number of bugs in Debian.
+\end{itemize}
+
+A small list of most common checks
+\begin{itemize}
+\item Check the source for license problems
+ \begin{itemize}
+ \item incompatibility
+ \item non-free license terms
+ \end{itemize}
+\item (sane) package renames / splits
+\item Policy violation
+\item source for everything included?
+\item ...
+\end{itemize}
+\end{frame}
+
+\subsection{Code}
+\begin{frame}{Code}{\alert{Oh, so they have Internet on computers now!}}
+git clone https://ftp-master.debian.org/git/dak.git
+
+\begin{itemize}
+\item Python
+\item and some Shell
+\item and some Perl
+\item at least 9 years old
+\item at minimum 40 different authors
+\end{itemize}
+\end{frame}
+
+\section{How to help / join}
+
+\subsection{QA Team}
+\begin{frame}{Join the Army, err, QA Team}{\alert{mhy - oh god. Ganneff has been on TV? I'm surprised the sets didn't all explode}}
+ \begin{itemize}
+ \item Do QA work
+ \item File removal bugs for unmaintained, outdated or otherwise no longer needed packages
+ \end{itemize}
+\end{frame}
+
+\subsection{Bug triage}
+\begin{frame}{Bug triage}{\alert{I am so smart! I am so smart! S-M-R-T! I mean S-M-A-R-T...}}
+ \begin{itemize}
+ \item Retitle bugs to fit our removal format
+ \item Close bugs that don't apply (anymore)
+ \item Make sure removals can happen (rev-deps anyone?)
+ \end{itemize}
+\end{frame}
+
+\subsection{Write Code}
+\begin{frame}{Write Code}{\alert{I'm normally not a praying man, but if you're up there, please save me Superman.}}
+
+\end{frame}
+
+\subsection{Join the team}
+\begin{frame}{Join the team}{\alert{Hi, my name's Moe. Or as the ladies like to refer to me, 'hey you in the bushes'}}
+Join us. Mail \href{mailto:ftpmaster@debian.org}{ftpmaster@debian.org}.
+
+Join us. Mail \href{mailto:ftpmaster@debian.org}{ftpmaster@debian.org}.
+
+Join us. Mail \href{mailto:ftpmaster@debian.org}{ftpmaster@debian.org}.
+
+Join us. Mail \href{mailto:ftpmaster@debian.org}{ftpmaster@debian.org} NOW.
+\end{frame}
+
+\section{Final}
+
+\subsection{The future}
+\begin{frame}{The future}{\alert{Facts are meaningless. You could use facts to prove anything that's even remotely true!}}
+ \begin{itemize}
+ \item Replace database code in dak with sqlalchemy
+ \item source v3
+ \item Split long description out of Packages files, make it nothing
+ than another translation
+ \item debtags integration, sections death
+ \item tdebs
+ \item ddebs
+ \item lintian autorejects
+ \item autosigning
+ \item binary throw away
+ \item ...
+ \end{itemize}
+\end{frame}
+
+
+\begin{frame}{Thank you for sleeping through this talk}{\alert{Ganneff - (trust full, when had i been that drunk?)}}
+ \begin{center}
+ Joerg Jaspert \\
+ \href{mailto:ftpmaster@debian.org}{ftpmaster@debian.org}
+
+ \href{http://ftp-master.debian.org/}{http://ftp-master.debian.org/}
+
+ \href{https://ftp-master.debian.org/git/dak.git}{https://ftp-master.debian.org/git/dak.git}
+
+
+
+ \vfill
+
+
+ \end{center}
+\end{frame}
+
+
+\end{document}