changeset 28:6c63083b4c19

Wrote text for the Preface; changed headings in Preface and Introduction.
author markus schnalke <meillo@marmaro.de>
date Wed, 09 May 2012 11:39:56 +0200
parents b687d151eed3
children 6afbb4a49962
files ch01.roff preface.roff
diffstat 2 files changed, 92 insertions(+), 56 deletions(-) [+]
line wrap: on
line diff
--- a/ch01.roff	Tue May 08 18:37:12 2012 +0200
+++ b/ch01.roff	Wed May 09 11:39:56 2012 +0200
@@ -7,12 +7,7 @@
 it headed to. This shall give an overview.
 
 
-.H1 "Email Prerequisites
-.P
-XXX Do we really need that?
-
-
-.H1 "What is MH?
+.H1 "MH \(en the Mail Handler
 .P
 MH is an electronic mail system, originating in the RAND Corporation.
 Historically, it had been a all-in-one mail system, with both Mail Transfer
@@ -109,7 +104,7 @@
 and old MH. The look'n'feel is common among them.
 
 
-.H1 "Understanding the Code and Community
+.H1 "nmh: Code and Community
 .P
 In order to understand the state, goals and dynamics of a project,
 one needs to know its history. MH comes from a time before the
@@ -157,6 +152,19 @@
 
 
 .H1 "mmh
+.P
+I started to work on my experimental version, which I call
+\fImmh\fP (for \fImeillo's mail handler\fP), in Fall 2011.
+In December, when I announced that I would work on an experimental
+version, the activity in nmh suddenly rose. Suddently the community
+started to move.
+After long years of mostly idling, nmh became actively developed again.
+What a great result!
+Hence, while I was working on mmh, the community was working on nmh
+too. My own work went in parallel and mostly unrelated.
+.P
+Because of several circumstances, my experimental version is rather
+a fork today, although this may change again in the future.
 
 .U2 "Motivation
 .P
--- a/preface.roff	Tue May 08 18:37:12 2012 +0200
+++ b/preface.roff	Wed May 09 11:39:56 2012 +0200
@@ -5,31 +5,35 @@
 the Unix toolchest is a set of file handling tools with a common
 concept. nmh is the currently most popular implementation of an
 MH-like mail handling system.
-
+This thesis describes creating an experimental version of nmh,
+named \fImmh\fP,
+to modernize, stream-line and to exploit the concepts
+even more thoroughly.
 
-.H1 "How the Fun Began" no
+.U2 "The Path to this Thesis
 .P
-I have discovered nmh in September 2009. At that time I used to use mutt,
-like many command line-attracted Unix users do.
-Conceptually nmh had convinced me at once and learning
+I have discovered nmh in September 2009. At that time I used to use the
+mail client mutt, like many command line-attracted Unix users do.
+The concepts of nmh had convinced me at once and thus learning
 its different model of email handling had been relatively easy.
 The change was like
-managing files in the Unix shell when you are used to graphical file
-managers, or like learning vi when you are used to modeless editors.
-The change was not trivial but as I was convinced by the concepts and
-already managed my files with shell tools and edited with vi, not to
-difficult either.
-In contrast, setting nmh up to a convenient state became a tendious task
+managing files in the Unix shell when being used to graphical file
+managers, or like learning vi when being used to modeless editors.
+The transition had not been trivial but, as I was convinced by the new
+concepts and
+already managed my files with shell tools and edited with vi, not too
+difficult neither.
+In contrast, setting up nmh to a convenient state became a tendious task
 that took several months.
 .P
-Once having nmh arranged as wished, using it was joy because of its
-conceptional elegance and scripting capabilities.
+Once having nmh arranged to a convenient state, I enjoyed using it
+because of its conceptional elegance and its scripting capabilities.
 On the other hand, however, it still was
 inconvenient in handling attachments, non-ASCII character encodings,
 and similar features of modern emailing.
-My setup required more and more scripts and additional configuration
-to have nmh act the way I expected it to behave, where my
-expectations were rather common to modern emailing than exceptionel.
+My setup required more and more additional configuration and helper scripts
+to have nmh act the way I expected it to behave, although my
+expectations were rather common for modern emailing than exceptionel.
 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
@@ -47,9 +51,8 @@
 In this point, my opinion differed from the opinion of most others
 as I voted for the MTA facility of nmh to be removed.
 .P
-Being not able to work on nmh in a way that would be
-accepted as part of my official studies, I needed to get my credit
-points with some other project.
+Being unable to work on nmh in a way that would be
+accepted as part of my official studies, I had to pick another project.
 Half a year later, starting in August 2010,
 I took one semester off to travel through Latin America.
 Within this time, I had to do practical computer work for three
@@ -91,25 +94,65 @@
 work to the present state of nmh. Time should prove me successful or
 not.
 Nmh would hardly be hurt by my work as I would not interfere with
-them. But nmh could profit from my experiences.
+them. But nmh would profit from my experiences.
+
+.U2 "Focus and Delimitation of the Document
+.P
+This document describes my work on the experimental version, named
+\fImmh\fP. It explains the changes I did to nmh, with having the focus
+on the reasons for the changes. It discusses technical, historical,
+social and philosophical reasons. On the technical side, this document
+explains how an existing project was stream-lined by exploiting the
+central concepts better and removing rough edges. On the historical
+side, changes in the use cases and the features of email and reactions
+to them are discussed. Socially, this document describes the effects
+and experiences of a newcomer with revolutionary aims entering an old
+and matured software projects and its community. Finally, philosophical
+thoughts on style, mainly based to the Unix philosophy, are present
+throughout the discussions.
 .P
-I started to work on my experimental version, which I call
-\fImmh\fP (for \fImeillo's mail handler\fP), in Fall 2011.
-In December, when I announced that I would work on an experimental
-version, the activity in nmh suddenly rose. Suddently the community
-started to move.
-After long years of mostly idling, nmh became actively developed again.
-What a great result!
-Hence, while I was working on mmh, the community was working on nmh
-too. My own work went in parallel and mostly unrelated.
+This document is written for the community \(en developers and users \(en
+around MH-like mail systems.
+First of all, the document shall propagade the design goals and
+implementation decisions of mmh. But as well, it shall clarify my
+perception of the
+concepts of MH and Unix, and the therefrom resulting point of view.
+Further more, the document shall explain this view on nmh and mmh.
+Despite the focus on MH-like systems, this document can be useful
+to anyone interested in the Unix philosophy, as well as anyone
+involved in old software projects, be it code-related or community-related.
 .P
-Because of several circumstances, my experimental version is rather
-a fork today, although this may change again in the future.
+The reader is expected to know Unix, C and email well. Good Unix shell
+knowledge, including shell scripting, is required. MH relies fundamentally
+on the shell. Without the power of the shell, MH becomes a motorbike
+without winding roads.
+Introductions to Unix and its shell can be found in XXX.
+The reader is
+expected to be familiar with the C programming language, although the
+document should be quite readable without knowledge of C, too.
+The book by Kernighan and Ritchie is the definitive guide to C.
+Some book about system-level C programming is worthwile additional
+literature. Rochkind and Curry have written such books.
+As large parts of the code are old, old books are likely more helpful.
+The format of email messages as well as the structure of email transfer
+systems should be familiar to the reader, at least on a basic level.
+It's advisable to have had, at least cross-read, the RFCs 821 and 822.
+The book XXX introduces email well, too.
+Frequent references to the Unix philosophy will be made.
+Gancarz XXX had tried to sum the philosophy up. Even better but less
+concrete is the literature by Kernighan and Pike XXX.
+The term paper ``Why the Unix Philosophy still matters'' by myself
+provides an overview on the topic, including a case study of MH.
 
 
-.H1 "Organization" no
+.U2 "Organization
 .P
-This thesis is split into XXX chapters, ...
+Which font for what use.
+Meaning of `foo(1)'.
+RFCs.
+MH vs. nmh vs. mmh.
+.P
+This thesis is devided into XXX chapters, ...
 .P
 .I Chapter 1
 introduces ...
@@ -121,22 +164,7 @@
 covers ...
 
 
-.\" What audience is expected?
-.\" What will not be covered (delimitation).
-
-.\" General required knowledge (C, email, ...)
-.\" cf. Email Prerequisites in the Introduction.
-
-
-.H1 "Conventions" no
-.P
-Which font for what use.
-Meaning of `foo(1)'.
-RFCs.
-MH vs. nmh vs. mmh.
-
-
-.H1 "Acknowledgments" no
+.U2 "Acknowledgments
 .P
 To be written at the very end.