# HG changeset patch # User markus schnalke # Date 1331117178 -3600 # Node ID 65e4327aa9f8a25b74ffa7c483e0c60b04ce596b # Parent 8fea9ed7c298ec7559575ade7d430cba86084f7e Added some introduction text. diff -r 8fea9ed7c298 -r 65e4327aa9f8 ch01.roff --- a/ch01.roff Wed Mar 07 11:45:38 2012 +0100 +++ b/ch01.roff Wed Mar 07 11:46:18 2012 +0100 @@ -1,13 +1,107 @@ .H0 "Introduction .P -foo -.P -bar +This chapter describes the background of the topics in this thesis. +General knowledge of electronic mail is assumed. .H1 "What is MH? .P -foo +MH is an electronic mail system, originating in the RAND Corporation. +Historically, it had been a all-in-one mail system, with Mail Transfer +Agent (MTA) and Mail User Agent (MUA). +Later, when electronic mail systems changed, Mail Submission Agent (MSA) +and Mail Retrieval Agent (MRA) facilities were added. +The MTA became less important, whereas the MUA became even more the +central part. +.P +First of all, MH is a style of a mail handling system. +It had started as a design proposal, not as an implementation, and +had in spirit remained so. This is similar to Unix, which much less +is a specific software product, as it is a style of system design. +MH is a toolchest of programs, modelled after the Unix toolchest, +and it is a specific mail storage format, like Unix has its file system +formats. + +.H1 "History of MH +.P +MH is an electronic mail system, originating in the RAND Corporation. +In 1977, Norman Shapiro and Stockton Gaines had proposed the design +of a new mail handling system, called ``Mail Handler'' (MH) for RAND, +to superseed their ``Mail System'' (MS). +Two years later, in 1979, XXX took the proposal and implemented a +prototype of MH. It proved successful and replaced MS thereafter. +.P +A decade later, the University of California had started to use MH. +They also took over its development and pushed MH forward. +This had been the time when the Internet appeared, Berkeley implemented +the TCP stack, and Sendmail was born. MH had often contained the first +implementation of new RFCs. +.P +In the nineties, MH had been moved into the public domain, making it +attractive to Free Software developers. The Internet had started to become +mainstream and in 1997, Richard Coleman initiated the ``New Mail Handler'' +(nmh), a fork of MH. He intended to modernize MH, improve its MIME +capabilities, and this should be done openly within the Internet +community. Today, nmh almost completely replaced the original MH. .H1 "How the Fun Began .P -foo +I have discovered nmh in XXX. I used to use mutt, like many +command-line-attracted Unix users. Nmh had convinced me conceptually +at once. Unfortunately, setting it up to a convenient state became a +tendious task. Learning its different model of email handling had, +in contrast, been relatively easy. Learning to use MH if you are used +to monolithic mail clients is like learning vi if you are used to +modeless editors. +Once having nmh set up, using it was joy because of its conceptional +elegance and scripting capabilities, but on the other hand it was +inconvenient in handling attachments, non-ASCII character encodings, +and similar stuff. I found it wrong to require more and more scripts +and configuration to have it act the expected way. In being a +software developer, I wanted to improve the situation. +.P +In Spring 2010, I asked on the nmh-workers mailing list for the +possibility to have a Google Summer of Code project on nmh. Being a +student, this appeared attractive to me. Eventually, it had not been +possible, but the nmh community started to move. In these months +nmh's future was discussed and I became part of a ``Does nmh need an +MTA'' discussion. There, my opinion differed from the opinion of +most others. +.P +As it hadn't been possible to work on nmh in a way that would be +accepted as part of my official studies, I needed to get my credit +points in some other way. But half a year later I was back. Starting +in Summer 2010, I took one semester off to travel through Latin America. +Within this time, I needed to do practical computer work for three +months. Richard Sandelman, an active nmh user, made it possible for +me to work on nmh during this time. Juan Granda, from Santiago del +Estero in Argentina, provided a computer and Internet connection. +Within these three month, I became familiar with nmh's code base and +its community. I learned how things work. Quickly it was obvious that +I wouldn't succeed to improve on the non-ASCII character encoding +problems, as this is one of the most intricate parts of the system. +Instead I improved code as I read through it. I found minor bugs in +the code and could improve the documentation. When I started with +larger code changes, I had to discover that the community's wish for +compatibility was stronger than its wish for convenient +out-of-the-box setups. This lead to long discussions, again. Finally, +I understand their point of view, but it's not mine. +At the end of my three-month project, I had became familiar with +nmh's code base and community, I had improved both a bit, and I still +was convinced that I wanted to go on with it. +.P +Another half a year later, I needed a topic for my master's thesis. +Now it was clear: I wanted to work on nmh. No, not exactly nmh, +because I had accepted that the nmh community has different goals +than I have. The won't be much progress if generally different opinions +lead to long discussions. After careful thought, I had decided to +start an experimental version of nmh. I wanted to go my way and see +where it would lead to. Time would tell if it would prove successful. +Nmh would hardly be hurt by my work, but could profit from my +experiences later. +.P +When I started to work on mmh, my experimental version, in Fall 2011, +activity in nmh rose suddenly. While I was working on mmh, XXX were +working on nmh. After long years of idleing, nmh was actively +developed again. That was a good sign. My own work went in parallel +and unrelated. Today, my experimental version became de facto a fork. +The mail storage, however, is still compatible.