]> Sergey Matveev's repositories - public-inbox.git/blob - Documentation/design_notes.txt
initial commit
[public-inbox.git] / Documentation / design_notes.txt
1 Design notes and philosophy
2 ---------------------------
3
4 Challenges to running normal mailing lists
5 ------------------------------------------
6 1) spam
7 2) bounce processing of invalid/bad email addresses
8 3) processing subscribe/unsubscribe requests
9
10 Issues 2) and 3) are side-stepped entirely by moving reader
11 subscriptions to git repository synchronization and Atom feeds.  There's
12 no chance of faked subscription requests and no need to deal with
13 confused users who cannot unsubscribe.
14
15 Use existing infrastructure
16 ---------------------------
17
18 * public-inbox can coexist with existing mailing lists, any subscriber
19   to the existing mailing list can begin delivering messages to
20   public-inbox-mda(1)
21
22 * public-inbox uses SMTP for posting.  Posting a message to a public-inbox
23   instance is no different than sending a message to any open mailing
24   list.
25
26 * readers may continue using use their choice of mail clients and
27   mailbox formats, only learning a few commands of the ssoma(1) tool
28   is required.
29
30 * Atom is a reasonable feed format for casual readers and is supported
31   by a variety of feed readers.
32
33 Why email?
34 ----------
35
36 * Freedom from proprietary services, tools and APIs.  Communicating with
37   developers and users of Free Software should not rely on proprietary
38   tools or services.
39
40 * Existing infrastrucuture, tools, and user familarity.
41   There is already a large variety of tools, clients, and email providers
42   available.  There are also many resources for users to run their own
43   SMTP server on a domain they control.
44
45 * All public discussion mediums are affected by spam and advertising.
46   There exist several good Free Software anti-spam tools for email.
47
48 * Privacy is not an issue for public discussion.  Public mailing list
49   archives are common and accepted by Free Software communities.
50   There is no need to ask the NSA for backups of your mail archives :)
51
52 * git, one of the most widely-used version control systems, includes many
53   tools for for email: git-format-patch(1), git-send-email(1), git-am(1).
54   Furthermore, the development of git itself is based on the git mailing
55   list.
56
57 * Email is already the de-facto form of communication in many Free Software
58   communities.
59
60 * Fallback/transition to private email and other lists, in case the
61   public-inbox host becomes unavailable, users may still directly email
62   each other (or Cc: lists for related/dependent projects).
63
64 Copyright
65 ---------
66 Copyright 2013, Eric Wong <normalperson@yhbt.net> and all contributors.
67 License: AGPLv3 or later <http://www.gnu.org/licenses/agpl-3.0.txt>