Why the evil capitalists don't like your Linux email server
Written by Freddie Fedora   
Wednesday, 11 February 2009 17:12

Lately, I've been asked by a number of people the difference between IMAP and POP. After using IMAP for a good decade, it's easy to forget that everybody else only knows what the vendors push on them, and doesn't really enjoy getting to know and enjoy the various mail protocols as closely as most of the folks I hang out with (re: aren’t total geeks). So here’s a quick discussion of why IMAP will save the world.

  • Push - IMAP4 supports a wonderful command called IDLE. The IDLE command allows your IMAP client to tell the IMAP server that it’s hanging around, waiting for new messages. It basically says “I’ll just hang here, you let me know when I get new mail.” This makes a lot of sense. This functionality is the reason lots of folks are addicted to their Blackberries. It allows instant notification with less network bandwidth, more power saved, all around better in every way. If your mail server doesn’t support this, get one that does.
  • Same everywhere - The main advantage of IMAP is that you can access your mail from anywhere and it’s the same. I use Nokia Mail my Nokia E71 and I have access to all of my work and personal messages.  I can chose which mailboxes I want to store local copies of (so I can work on them when I’m out of network coverage — when I get back into range, all my changes get sync’ed right up), and the rest I can access when I need to.  Nokia has amazing IMAP support, better than almost any desktop mail client I’ve ever seen.  any folks think that IMAP means you never download your messages or delete them from the server.  While many of the advantages certainly are more useful if you don’t delete messages from the server but leave them there for other clients, its certainly not a requirement.  You can certainly use IMAP more like POP and download/delete messages off the server should you so desire.  It just doesn’t make sense in many situations to do that.
  • Server-Side-Filtering - One of Outlooks niftier features when it first came out was the mailbox sorting. It was easy to develop rules to allow mail to be automatically responded in certain ways, deleted, forwarded to other accounts, or filed into specific folders. That’s great, but the downside is that it all occured in the mail client. You had to download all of your mail locally first, then make your changes.  None of those changes were sync’ed on the server necessarily then because they occured locally.  IMAP supports the ability to do all this on the server. So, for example, I could have my IMAP server filter all messages from that one guy at work who likes forwarding large joke email attachments to a specific folder that I only read with my desktop client, but my Nokia ignores by default.
  • IMAP on a diet - Speaking of large files, here’s another great feature of IMAP.  You can configure your IMAP client to only download what it needs to.  On my Nokia, for example, it’s configured to only download the first 5000bytes of every message.  That’s enough to get the text of all but the longest rants, and plenty enough to know whether I’m going to delete the email, forward it, file it in a folder, or wait until I’m back at a real keyboard to respond.  Same thing with any attachments.  I can download them if I want, but by default, they stay on the server.  I can still delete the message, move it to a folder, all without actually getting the entire message on my palm.  This saves tremendously load on the network, on the device, and just plain makes sense.
  • Server searches - Not only can IMAP filters be set up to filter incoming email, but live searches of folders can be done on the server as well.  So if I wanted to find an email form a particular person between a particular date range that was stored in a particular mailbox, I could initiate an on-the-fly search on the server for that particular message.  The server does all the heavy listing, and if it’s a common search, I could leave that mailbox on the server to be accessed from any of my clients.  How amazing is this stuff?

There’s a number of other reasons why IMAP is nice, but I think that sums it up for me.  I do have this to say — IMAP is so nice that once I switched I never looked back.  Same goes for pretty much everyone else I know.  So if IMAP is so great, how come Microsoft/Blackberry/Lotus don't want you using it?  Well, for one thing, if you compare POP3 with their offerings, there's still a reason for you to spend some money on their products.  With IMAP, pretty much all their much vaunted differentiation go away.  Admittedly the administrative interface for IMAP servers is not nearly as friendly, but with a little perserverance (or outsourcing - in Singapore, IBM and Lightspeed both offer on-demand and classic implementations), you'll get everything you want out of an email system at a fraction of the cost of a big-name software package with an even larger price tag.