comparison ch01.roff @ 45:7a33b5adb672

Rework in the Intro.
author markus schnalke <meillo@marmaro.de>
date Thu, 17 May 2012 16:17:09 +0200
parents c21ff903c71c
children eae5e50381ce
comparison
equal deleted inserted replaced
44:18e56d609fbf 45:7a33b5adb672
231 nmh-workers vixie edginess 231 nmh-workers vixie edginess
232 .] 232 .]
233 After long years of much stagnation, nmh became actively developed again. 233 After long years of much stagnation, nmh became actively developed again.
234 Hence, while I was working on mmh, the community was working on nmh, 234 Hence, while I was working on mmh, the community was working on nmh,
235 in parallel. 235 in parallel.
236
237 .U2 Naming
238 .P 236 .P
239 The name \fImmh\fP stands for \fImeillo's mail handler\fP, 237 The name \fImmh\fP stands for \fImeillo's mail handler\fP,
240 because mmh is my own version of MH. 238 because mmh is my own version of MH.
241 (My login name is \fImeillo\fP.) 239 (My login name is \fImeillo\fP.)
242 The project follows my personal considerations and preferences. 240 The project follows my personal considerations and preferences.
262 Although mmh bases on nmh, it is likely seen as a step backward. 260 Although mmh bases on nmh, it is likely seen as a step backward.
263 I agree. 261 I agree.
264 However, this step backward actually is a step forward, 262 However, this step backward actually is a step forward,
265 although in another direction. 263 although in another direction.
266 264
265
266 .H1 "This Thesis
267
267 .U2 "Motivation 268 .U2 "Motivation
268 .P
269 The mmh project is motivated by deficites of nmh and
270 my wish for general changes, combined
271 with the nmh community's reluctancy to change.
272 .P
273 nmh hadn't adjusted to modern emailing needs well enough.
274 The default setup was completely unusable for modern emailing.
275 Too much setup work was required.
276 Several modern features were already available but the community
277 didn't wanted to have them as default.
278 .P
279 In my eyes, the concepts could be exploited even better and
280 the style of the tools could be improved. Both would would simplify
281 and generalize the system, providing cleaner interfaces and more
282 software leverage, at the same time.
283 .P
284 In providing several parts of an email system, nmh would hardly
285 be able to compete with the large specialized projects that focus
286 on only one of the components. Concentrating all development power
287 on the most unique part of nmh and giving the user the choice to
288 pick his prefered set of the other mail components would be the better
289 approach in my eyes.
290 Today's pre-packaged software components encourage this approach.
291
292 .U2 "Why it is worth it
293 .P 269 .P
294 MH is the most important of very few command line toolchest email systems. 270 MH is the most important of very few command line toolchest email systems.
295 (There's also \fIim\fP by Tatsuya Kinoshita, 271 (There's also \fIim\fP by Tatsuya Kinoshita,
296 which operates on an MH mail storage.) 272 which operates on an MH mail storage.)
297 Toolchests are powerful because they can be perfectly automated and 273 Toolchests are powerful because they can be perfectly automated and
304 popular amoung them, they should be developed further to keep their 280 popular amoung them, they should be developed further to keep their
305 conceptional elegance and unique scripting qualities available to users. 281 conceptional elegance and unique scripting qualities available to users.
306 mmh will create a modern and convenient entry point for new, interested 282 mmh will create a modern and convenient entry point for new, interested
307 users to MH-like systems. 283 users to MH-like systems.
308 .P 284 .P
285 The mmh project is motivated by deficites of nmh and
286 my wish for general changes, combined
287 with the nmh community's reluctancy to change.
288 .P
289 nmh hadn't adjusted to modern emailing needs well enough.
290 The default setup was completely unusable for modern emailing.
291 Too much setup work was required.
292 Several modern features were already available but the community
293 didn't wanted to have them as default.
294 mmh is a way to change this.
295 .P
296 In my eyes, MH's concepts could be exploited even better and
297 the style of the tools could be improved. Both would simplify
298 and generalize the system, providing cleaner interfaces and more
299 software leverage, at the same time.
300 mmh is a way to demonstrate this.
301 .P
302 In providing several parts of an email system, nmh can hardly
303 compete with the large specialized projects that focus
304 on only one of the components.
305 The situation can be improved by concentrating the development power
306 on the most unique part of MH and letting the user pick his prefered
307 set of other mail components.
308 Today's pre-packaged software components encourage this model.
309 mmh is a way to go for this approach.
310 .P
309 It's worthwhile to fork nmh for the development of mmh, because 311 It's worthwhile to fork nmh for the development of mmh, because
310 the two projects focus on different goals and differ in fundamental questions. 312 the two projects focus on different goals and differ in fundamental questions.
311 The nmh community's reluctance to change conflicts 313 The nmh community's reluctance to change conflicts
312 with my strong will to change. 314 with my strong will to change.
313 In developing a separate experimental version new approaches can 315 In developing a separate experimental version new approaches can
314 easily be tried out without the need to discuss changes beforehand. 316 easily be tried out without the need to discuss changes beforehand.
315 In fact, revolutionary changes are hardly possible otherwise. 317 In fact, revolutionary changes are hardly possible otherwise.
316 By forking nmh, mmh will likelier bring fresh air into the field of
317 MH-like mail systems than without forking.
318 Fresh air is good to reactivate a matured project.
319 .P
320 These reasons support the decision to start mmh as a fork of nmh. 318 These reasons support the decision to start mmh as a fork of nmh.
319 .P
320 The mmh project provides the basis to implemented and demonstrated
321 the listed ideas without the need to change nmh or its community.
321 Of course, the results of the mmh project shall improve nmh, in the end. 322 Of course, the results of the mmh project shall improve nmh, in the end.
322 323
323 .U2 "Target Field 324 .U2 "Target Field
325 .P
326 Any effort needs to be targeted towards a specific goal
327 in order to be successful.
328 Following is a description of the imagined typical mmh user.
329 mmh should satisfy his needs.
324 .P 330 .P
325 The target user of mmh likes Unix and its philosophy. 331 The target user of mmh likes Unix and its philosophy.
326 He likes to use programs that are conceptionally appealing. 332 He likes to use programs that are conceptionally appealing.
327 He's familiar with the command line and enjoys its power. 333 He's familiar with the command line and enjoys its power.
328 He is at least capable of shell scripting and wants to improve his 334 He is at least capable of shell scripting and wants to improve his
333 and actually likes the choice to pick the ones he preferes. 339 and actually likes the choice to pick the ones he preferes.
334 He has a reasonably modern system that complies to standards, 340 He has a reasonably modern system that complies to standards,
335 like POSIX and ANSI C. 341 like POSIX and ANSI C.
336 .P 342 .P
337 XXX common scenarios? 343 XXX common scenarios?
338 344 .P
339 .U2 "The Vision 345 General assumptions of the project are:
340 .P 346 .BU
341 The general goals of the mmh project are the following: 347 Elegance \(en being simplicity, clarity and generality \(en is most important.
342 .BU 348 .BU
343 I believe that mmh should be perfectly suited for modern emailing, 349 Concepts are more important than concrete implementations.
344 out-of-the-box. 350 .BU
345 .BU 351 Time and space optimizations are only useful if absolutely needed to make
346 I care less about compatibility and more about conceptionally elegant 352 the software usable.
347 approaches. 353 .BU
348 .BU 354 Having a lot of choice is bad.
349 I care for general, clear, and simple concepts.
350 .BU
351 I like to create an of-one-style email system. It should feel like
352 cast as one.
353 .BU
354 I plan to remove any optimizations that rises obscurity, unless it
355 appears to be neccessary to make mmh usable at all.
356 355
357 .U2 "Work to do 356 .U2 "Work to do
357 .P
358 The general goals for the mmh project are the following:
359 .BU
360 mmh should be perfectly suited for modern emailing, out-of-the-box.
361 This is a necessity to spread among new users.
362 .BU
363 The system shall be of-one-style. It should feel like cast as one.
364 .P
365 To do list:
358 .BU 366 .BU
359 Remove the MTA and MRA facilities. Mmh shall concentrate on the MUA 367 Remove the MTA and MRA facilities. Mmh shall concentrate on the MUA
360 task. Mail shall enter mmh's mail storage via the system mail drop 368 task. Mail shall enter mmh's mail storage via the system mail drop
361 and it shall leave mmh via the local \fLsendmail\fP command. 369 and it shall leave mmh via the local \fLsendmail\fP command.
362 .BU 370 .BU
378 Merge \fLshow\fP and \fLmhshow\fP into one single mail display program. 386 Merge \fLshow\fP and \fLmhshow\fP into one single mail display program.
379 Integrate MIME support deeper and more natural into MH. 387 Integrate MIME support deeper and more natural into MH.
380 .BU 388 .BU
381 Provide a ready-to-use setup out-of-the-box. 389 Provide a ready-to-use setup out-of-the-box.
382 390
383
384 .H1 "Goals of this Thesis
385
386 .U2 "Methods 391 .U2 "Methods
387 .P 392 .P
388 foo 393 foo
389 mmh wants to provide a ready-to-use setup for modern emailing,
390 which is a necessity to spread among new users.