Having never used GMail up until earlier this year (what a concept!) and still being one of the remaining ten or so people in the world who do not read their email in either a browser or Mail.app, I have noticed a few major annoyances beyond the more conceptual objections of using a third-party provider.
In fact, they're more than just annoyances. They bug the living shit out of me. To save some space, let's just side-step the general objection I have to outsourcing the handling of all your privileged (if at times entirely boring) communications and let's focus on the two biggest issues:
When I send mail to a mailing list that I am subscribed to, GMail decides that I already know what I wrote and therefor should not be getting the mail delivered. That's just bogus, man! I'd be perfectly happy with GMail adding a custom header and even having a default filter, but I want to have a way to disable that and actually receive my mail and filter it myself. That, filtering mail myself, actually happens to be precisely what I do:
That's right, I don't use a browser to read my email. (Gasp!) I don't use Mail.app, either. Nor Thunderbird. Of course all of that shouldn't really matter, because we're not talking about a mail client presenting to me the mail it received -- we're talking about the mail server choosing not to deliver mail. So the fact that I happen to use fetchmail(1), procmail(1) and mutt(1) to receive mail (msmtp(1) to send mail via GMail) really shouldn't matter.
set daemon 500 set logfile /Users/jschauma/Mail/fetchmaillog poll imap.gmail.com protocol IMAP user "jschauma@<domain>" is jschauma here password '<application-specific-password>' ssl sslcertfile /Users/jschauma/misc/cacert.pem no rewrite mda "/usr/pkg/bin/procmail -f %F -d %T"
defaults auth on tls on tls_starttls on tls_certcheck on # A first gmail address account gmail host smtp.gmail.com port 587 from jschauma@<domain> user jschauma@<domain> password <application-specific-password> # Set a default account account default : gmail
Alright, so I fetch my mail and filter it locally. That is, I really need to actually get my mail before I can decide if I want to junk it. Now I happen to like to have my mailing lists complete, including the mails I sent, but with GMail that is entirely impossible. In addition, like a number of other people, I like to verify that mail I sent was... actually sent, ie delivered. If my own mail is delivered to the mailing list, I will receive a copy. Oh, wait, no, not with GMail. Mails sent by myself are not delivered to me. They happen to appear in my GMail "sent" folder, but that doesn't really help me at all. Pfffft.
Next up: mailing lists. Or as Google calls them nowadays: "groups". GMail dedupes incoming mail. That is, if I am subscribed to multiple mailing lists, and an email is sent to two of them, I will only receive one copy.
Remember how I said that I like my mailing list archives to be complete? This helps me follow an email thread or conversation many months later by looking in a single mailbox. No longer possible -- GMail decided that this one email originally sent to both List A and List B will arrive in my inbox from List A, and the next one from List B. The second copy, which would actually be different from the first one with regards to the various headers, is dropped completely. I never see it.
As a result, I will get some emails of a thread filtered into one mailbox and other emails will go into another mailbox.
Now this becomes particularly irritating when the mail was sent to multiple lists as well as directly to me. That is, sometimes mail with an explicit To: or CC: to me shows up in my inbox without any of the List-ID headers (on which I filter), sometimes it shows up with those headers. As a result, one copy might end up in a mailbox I pay attention to only once a day, and another copy might end up in my actual inbox.
Ok, so there's the possibility of me actually reduping incoming mail based on the rather unreliable To/CC headers, but that requires me to know which lists the mail was originally delivered to. It turns out that if you have one list be subscribed to another (or one group being a subgroup of another), this becomes completely impossible.
For example, we have one alias/group/list for everybody in the company; then there is one alias/group/list for the local office. Mail sent to the "everybody in the company" list sometimes shows up as having been delivered to the local-office-list, sometimes as to "everybody". As a result, I end up with fragmented email threads in multiple mailboxes (which are differently prioritized).
This is really frustrating. HOW DO YOU GUYS WORK WITH THIS SHIT?
Now people tell me "oh, I just read my mail in the browser and use GMail labels", for example. This may well work for you, but it doesn't work for me. The problem I have is that GMail simply breaks how email is supposed to work. It's dumbing down the information for the broader audience. I end up with a broken setup and frustrating confusion about the location of emails, with fragmented threads and an email archive that becomes less and less useful by the day. And that stinks.
If you happen to have practical solutions to these problems that do not involve me changing my mail client, please let me know.
P.S.: Just for the record, I understand very well the benefits to Google of behaving the way they do. I also happen to really, really like their two-factor authentication. Still.
June 07, 2012