I don't have a lot to say, but this is my little bit.

Thursday, October 1, 2009

A Good Configuration For Email

Following is a description of how I manage my email. I came to this solution after years struggling to find the best possible configuration, and I feel it may benefit others who want to do something similar. My constraints were:
  • I have multiple email addresses
  • I want to view all my emails from all my addresses altogether
  • I want to be able to sort my emails into folders
  • I want reasonable spam filtering
  • Most often I want to be able to view my emails in a desktop program on my primary laptop
  • Sometimes I want to be able to view my emails on the web, when I am traveling without my laptop
  • Sometimes I want to be able to view my emails on my secondary netbook
  • I want all my emails on my two computers and the web to all sync up perfectly
  • I want my emails to persist even if I experience a technological failure on one of my own machines
That last constraint was what jolted me into action: in January 2009 the hard drive on my MacBook Pro failed; and although I had medium-old backups of my important personal files, I did not have backups of my emails, some pictures, calendar data, contact information, bookmarks, and other things. (Luckily, I was able to cobble together about 90% of everything, but I lost my bookmarks and contacts, which was a real pain.) I decided that I would take two actions to prevent a repeat of that scenario: I would start using Time Machine, which is the data backup solution for Macs; and I would start to "push out" my data onto the internet -- out "into the cloud". I found internet-based services to house my email, my contacts, and my bookmarks. Using these services also allowed me to synchronize data amongst multiple machines, and makes setting up new machines a lot easier.

For email, I chose Gmail, which should be familiar to everybody on the internet. Using Gmail I was able to configure things to satisfy all of my constraints, plus an additional one:
  • My emails should live forever and ever, unless I explicitly delete them
My setup centers around one particular email address which I consider my primary address. Although it could be an @gmail.com address, instead I use Google Applications on my own domain (rinard.us, the same domain where I keep this blog). Google Applications is a collection of lots of the different services from Google, with the particular benefit that you can put it on your own domain. As for email in Google Applications, it is the full Gmail experience with all the features of Gmail.

So, I consolidate all email addresses under the primary Gmail-based address by using Gmail as a client application to the other addresses. That means that, just like a desktop application, every couple minutes Gmail goes out, logs into my other accounts, downloads the emails, applies Gmail spam filtering and rules, and incorporates those emails into the primary account. Then, I can either use Gmail on the web, or I can use a desktop application on either of my laptops as a thin client to Gmail.

Here are basic instructions, but you can search the web for more detailed instructions for any step that isn't clear:
  1. Set up Gmail as a client application to other email addresses
    • In Gmail, go to Settings -> Accounts
    • Under "Get mail from other accounts", use the link "Add a mail account you own" to do just that
  2. Set up Gmail so you can send emails from those other addresses
    • For each account you added, you can optionally configure Gmail to be able to send email from that account.
    • Under "Send mail as", use the "Add Another Email Address You Own" to do just that
  3. Enable IMAP so that desktop applications can mirror Gmail
    • Go to Forwarding and POP/IMAP -> IMAP Access -> Enable IMAP
  4. Set up IMAP in each desktop environment to mirror Gmail
    • Under IMAP Access, follow the instructions provided by "Configure your email client"
  5. Set up labels (folders) as desired
    • Go to the Labels tab then to the Labels section and use the feature to "Create a new label"
  6. Set up rules as desired
    • Go to Filters and use the link "Create a new filter" to do just that
None of these steps is hard, but none of them are trivial, either; and the whole solution, while obvious in retrospect, was not obvious before I set it up. This solution is really great, though, and I highly recommend it for others. Some particular warnings:
  • Don't use your desktop email application to consolidate your email accounts.
    • If your computer crashes then you will have to recreate all the email configurations on your reset machine.
    • You won't be able to use the web to access your full email environment when you don't have your own computer.
    • You won't be able to synchronize emails effortlessly across multiple personal computers. (This point was huge for me.)
  • Don't forward your other accounts to Gmail; instead use Gmail as a client to those other accounts.
    • Gmail is smart enough to be able to distinguish between emails from different addresses only if it goes out and gets them itself.
    • If you forward an email to Gmail, it won't know that that email is different than any other email.
  • Don't use POP (always use IMAP)
    • POP is a protocol designed for situations where you want a server to hold your emails just long enough for you to download them to your own computer
    • IMAP is a protocol designed for situations where you want a server to hold and manage your emails, including having folders and other important features
    • POP simply won't do what is needed in this scenario

1 comment:

  1. You want to keep *every* email unless explicity deleted? This is the exact opposite of my scenario. I have multiple email accounts, all designated for different purposes. The cloud ones stay in the cloud, and my personal ones stay on my personal machine which gets backed up to a flat file every night. So, while I appluad your simplicity and consolidation, I absolutely disagree in practice for my needs. As well, this will probably be prohibitive to any honest or ultra secret emails to you in the future. ;)