Gmail saga : forwarding, filters, and POP-3

A few days ago I’ve mentioned that I have a problem with some of my email accounts.  The thing was that I have a few mailboxes, and all of them forward all incoming messages to a single account that I use for everything.  Some of the accounts forward emails using Gmai’s forwarder, some forward emails using a filter, and some mailboxes are checked for email via POP-3.  That’s not because I like variety, but because all these accounts were created at different times, back when Gmail wasn’t as full featured as it is now.

Anyways.  I realized that one of the accounts stopped forwarding the emails.  I logged into it, and found that there were thousands of messages waiting for reply.  None of these messages made it through the forwarder.  The mailbox is also quite old, and has plenty of email history – most of which I already had in my central mailbox.

I tried to create a new filter so that I could only forward the ones that didn’t make, but that didn’t work.  I played around with filters, IMAP access, and a few third-party scripts, but nothing was giving the result that I wanted.  The only option left was POP-3.  So I went for it.

The thing with POP-3 access in Gmail is that when you enable it, you have to choose for which messages – either only the new ones from this point, or for all of them.  I had to go for the “all of them”.

The mailbox in question contains a history of 50,000 conversations.  I cleaned up a bit, so just before the POP-3 pull started, I had around 35,000 conversations.  Gmail’s POP-3 mail check works interestingly.  It fetches a maximum of 200 messages per session.  And it takes a few minutes’ break between sessions.  It took just a bit over 48 hours to import all my messages to another account via POP-3!

Gladly, most of them were not duplicated.  Gmail was smart enough to know which messages I already had and which I didn’t.  And the ones that I didn’t went through the filtering process in the central mailbox, as they should.  So after about 2 days of waiting, I’ve ended up with a couple of thousands of new messages.  Sorted through them in a matter of an hour (thank you Gmail team for keyboard shortcuts!), and now I am up to speed again.

Thinking over this experience, I will probably go through the settings of all my other accounts and make sure that I am using POP-3 rather than filters or forwarders.  Somehow I think it is a little bit more reliable.

If you emailed me in the last few days and I haven…

If you emailed me in the last few days and I haven’t replied, please give me a bit more time.  Today I realized that Gmail forwarding for one of my main email accounts broke all by itself.  I found a whole lot of new messages in the mailbox, which I never check.  I’ve reconfigured my Gmail to use POP rather than a forwarding filter, and messages are being delivered to me now.  However the backlog will take me some time to process.  Sorry.

Morse Code for Android

Gmail team celebrated this year’s April Fools day with Gmail Tap.

[youtube=http://www.youtube.com/watch?v=1KhZKNZO8mQ]

That, of course, made me smile.  But it also made me think.  It’s been a long while since I wanted to learn Morse Code.  I knew bits and pieces for years, and I could probably transmit my SOS if nobody was shouting in panic.  But I’ve always wanted to allocate the time and learn not only how to send out the full alphabet, but also get some receiving practice.

A few seconds, I’ve downloaded two Android apps to my phone:

  1. Morse Code Trainer that I hope will help me learn the alphabet, and
  2. Morse Code Keyboard that I hopefully will use to get some practice.

All that obviously can’t guarantee that I’ll learn anything at all. But at least I’m trying to get myself started…

The permanence of temporary

I came across this little story about the Gmail logo.

How many times have you been told not to leave something for the last minute, but when you did, it actually turned out better than expected? Well, Gmail’s logo was the product of this situation — it was designed by Dennis Hwang (who’s responsible for most of Google’s doodles at the time) the night before Gmail launched. Former Google designer Kevin Foxtells the story on Quora: “The logo was designed literally the night before the product launched. We were up very late and Sergey and I went down to his cube to watch him make it.”

The last minute bit reminded me of something else.  A few years ago I was involved in a project with a rather hectic release plan.  There was too much work to do, not enough organization, and the deadline appeared much sooner than expected.  The team was in the office pretty much since Friday afternoon and it was already just after 11pm on Sunday night.  Everyone was stressed and exhausted, and we thought that the painful release of the project was just about done.

It was then that we got a report from the support department that something is wrong with our outgoing emails.  And the problem was that they weren’t going out much.  Clients submitted forms and were told to expect activation / verification email with code.  And those emails weren’t coming for a while already.

It was then that we realized that in all the chaos we actually completely forgot to implement that bit functionality.  There was nothing there that was sending emails.  Oops!

I kicked everyone out of the room, locked the door and wrote a very quick Perl script.  I spent not more than 15-20 minutes.  We just needed something really quick to get the mail queue out of the way.  We would rewrite it properly next day, when the dust settles a bit and everyone is rested and thinking clearly.

Can you guess when we actually rewrote it?  One and a half years later!  That’s  right!  Something as temporary as that lasted and did the job for almost two years.  Turned out that the job I wrote it to do on the first night was pretty much the job it would be doing 24×7, and there was no need to even update it.  It supported templates, multiple languages, and pre-configured attachments based on the template and language.  And it was efficient enough, since when I was writing it we already had a few thousand messages in the queue and I wanted to send them out as quick as possible.

Even later, when the rewrite happened, it wasn’t for any new functionality, but for better integration with the rest of the project.  After all, it doesn’t make much sense to have a single standalone Perl script in the project that is completely written PHP.  It was ported almost verbatim.

Every time I tell this story, especially to my Russian friends, I keep hearing the same response: “Nothing is more permanent than temporary“.  You build something to last for years and it gets destroyed, redesigned, and rebuilt every 6 month.  You throw something together to get you through the day and that lasts a century.

The Gmail logo reminded me of that.  Designed on the night before the release, the logo is still here…

Restore Gmail contacts

Today, when I navigated to my Gmail contacts, I was greeted by the following message:

The “Learn more” link points to the page with very simple restore instructions:

  1. Click Contacts.
  2. From the More actions drop-down menu, choose Restore contacts.
  3. Choose the time you’d like to revert your contacts list to (e.g. 10 minutes ago, one hour ago, one week ago, etc). We suggest that you also make a note of the time that you restore your contacts, in case you’d like to return to where you started.
  4. Click Restore. You’ll see a confirmation at the top of the screen when the rollback is complete.