Cleaning Up My Inbox to Solve Mobile IMAP Performance Problems

Reading Time: 3 minutes

Over the past couple of months I’ve noticed that my Treo 650 has more and more trouble opening the IMAP Inbox for my main email account. The reason for this is obvious: I’m an email pack rat.

At the height of my madness, I had over 25,000 messages in my main email account’s Inbox. I was about as anti-Inbox Zero as you could get.

For the last year, I’ve read article after article touting the benefits of managing your Inbox and not letting it become a repository of last resort. Sites like 43 Folders and Lifehacker seem to do an article a week (or more) on the subject. But it wasn’t until I hit the practical limit of my Treo’s ability to manage my Inbox wirelessly that I gave in and started filing and purging.

Before you email me and ask, “What do you mean when you say your Treo had trouble opening your Inbox?”, I’ll describe the situation. I use Chatter Email, an alternative email client for the PalmOS that excels at managing IMAP accounts. As an IMAP mailbox grows, the mail server takes more time to respond to the initial connection request after you login. Whether you are using wireless access or not, you can tell that the mail client has to sync itself with the mailbox.

As my Inbox approached and surpassed 20,000 messages, the Treo began taking longer and longer to display the most recent messages after Chatter Email was launched. Sometimes it would take 45 minutes or more, which meant that I would leave the office to run some errands and my Treo would still not be in sync with my primary email account when I got back. That’s unacceptable– particularly when most of your friends and family know that you carry a wireless email device.

Little by little I’m reducing the size of my Inbox when I’m at a PC-based email client. I began by creating folders in my IMAP account for messages of lasting value. Folders seem to have a positive effect on Chatter Mail’s responsiveness, since its sync time is impacted by the size of the Inbox folder. After that, I started at the oldest messages and started filing or deleting.

My goal is to whittle my Inbox down by about 1,000 messages a week. This is pretty achieveable, since a lot of email I receive is related to the status of things I manage that are connected to the Internet. This includes Linux servers in colocation which often kick out messages to me with the output of cron jobs, but also extends to things like Google Alerts.

Having said that, I’ve gotten rid of a lot of my Google Alerts for the moment. In the past I’ve used Google Alerts to monitor news sites for ideas for Operation Gadget articles. As you know, my posting frequency has fallen a lot since my son Jimmy was born in May. If I’m not posting much, I don’t need the alerts cluttering my Inbox.

Some people in the Inbox Zero crowd (a philosophy that stresses empty inboxes the way some personal organization consultants stress a clean desk) apply a much more aggressive standard when they make file-versus-delete decisions on old email. I try to keep enough old emails around so I can remember the context of conversations that are important. In other words, I keep most emails I exchange with my family for continuity purposes, even if it means that some of the filed messages are no more than “Hi, how are you?” messages going back and forth. I’ve got so many other messages that I can delete because they are no longer relevant, the savings will still be huge.

If you administer Linux servers on the Internet as I do, Time Management for System Administrators by Tom Limoncelli has some great recommendations in terms of improving personal productivity. There are a lot of tips about how to manage an email account that I thought was interesting when I first read the book. Now I’m going back and implementing a lot of those ideas.

Hopefully I’ll be down to less than 1,000 emails in my Inbox before too long. Then the performance of my Treo should be really snappy again. I hope that I can maintain Inbox management discipline when I get to that point.