Related link: http://gmail.google.com
For the last two weeks I’ve been testing out Google’s new GMail service, and I’m impressed. This is going to turn out to be a very important piece of software, and for a number of reasons. The Google team has made real advances in the state of the art in at least two areas, and while the result isn’t quite perfect, it sets the bar a lot higher for both their competition and developers everywhere.
But first: GMail has gotten a lot of press over the last month for their targeted advertising policy–so much that legislative remedies have been proposed in California. This is pure hysteria. Of course, there is a privacy risk with any web mail system: your personal correspondence is stored on a server that you don’t control. But Google’s ad system is harmless: each message is scanned by the system as you view it, and the ads are served up from Google’s database on-the-fly. No human being is involved in the process. The ads themselves are unobtrusive and, being text, load quickly. There’s no waiting for the page to load while your browser reaches out for a banner ad on some server in Prague.
So why is GMail so impressive? First, they’ve fundamentally rethought email interfaces. I’ve been using email for about fifteen years, and during that time every mail interface I’ve used has been based on the same fundamental metaphor: individual messages stored in folders. The virtual desktop has been aping the real desktop since the 1960s, forcing me to store any given message in exactly one place.
GMail changes that. A GMail account has exactly one folder, containing all of your messages. Messages are grouped into “Conversations”, containing all the messages in a particular thread. Threading is nothing new, although GMail is the first mass market service I’ve seen that relies heavily on it. The mailbox itself has three default views - an Inbox, a “Starred” view for finding conversations you’ve marked as of interest, and an All Mail view. Conversations live in the Inbox until you choose to Archive them, at which point they are available from the All Mail view, and by searching.
For finer grained filing, GMail introduces the concept of a Label. You can define as many labels as you want–for example, Business, Family, and Friends. Each conversation can be tagged with zero or more labels, and you can then easily retrieve all the conversations labeled in a particular way. This replaces dragging messages into individual folders, with an important advantage - you can categorize a message in more than one way, such as a business proposal from a friend. A filter capability makes it easy to set up rules to automatically label messages as they come in.
Labeling (or tagging) a document, be it an email conversation, spreadsheet or digital photograph is becoming an increasingly important method of data management. My friends over at Constant Time Software have done a similar thing with their Electric Shoebox software, which is now my platform of choice for managing digital photographs. But GMail could be critical here: the concept of tagging data in applications is by no means a new one, but it’s also not something that has really caught on with the vast majority of computer users. GMail has the potential to roll this interaction metaphor out to the masses, making it much easier for other developers to incorporate the technique in the future.
The rest of the email interface includes a set of well thought out features for encouraging safe, secure email use. The system does not, for example, load external images by default, although it makes it easy to load them if you want them. This prevents spammers from sending themselves return receipts by planting image requests in their messages, and prevents the more egregious porn spam from showing up in the office. At least, I assume it does, since no porn spammer has found my GMail address yet.
The second advance is the web interface itself. I’ve long been a proponent of web applications that act like “regular” applications. The difference between the two is about immediate responsiveness, which is expected of desktop applications, versus a request-response metaphor that is still tolerated in web application design - although I haven’t the foggiest idea why. GMail is an incredibly well designed application. The interface is entirely HTML and DHTML, with only a few, tiny, graphics. Pages load almost instantaneously–the Compose Mail screen for my account is only 1,001 bytes and loads instantaneously. The spell checker interface is the best I’ve seen in a web application, although it seems to have trouble with contractions. For power users, they’ve even managed to implement PINE-style hotkeys, allowing complete navigation of the system from the keyboard. All in all, it’s a hellishly impressive piece of thin-client interface design, and is going to raise the bar for every competitor.
The search functionality, as one would expect, is superb. I’ve already found myself wishing for a way to pull my other mail files into GMail: a recent attempt to search a few gigabytes of archives on my laptop took over ten minutes to return, and was difficult to set up. I haven’t been able to accumulate enough GMail mail to stress test it, but the searches I ran all came up on target and made it much simpler to find the messages I was looking for than any other system I’ve used.
Of course, like any 1.0 product, it doesn’t have everything. There’s no Draft capability for email composition, which seems a particularly strange oversight. The Spam filter seems to work fairly well, but it also doesn’t give you an indication that it’s trapped any spam, so you have to check periodically to screen out the false positives, of which there have been a few. But those gripes are fairly small potatoes, and I wouldn’t be surprised to see both of them addressed by the time the service goes public (although the Draft omission is so weird that I wonder if it’s intentional). Support for “Personalities” a la Eudora would be nice too - I have several email accounts that forward to a central address, and I’d like my GMail account to be that central address. GMail does allow you to specify a non-GMail return address, but it can’t cycle them based on the address the message was originally sent to.
Despite the nitpicks, GMail is an excellent product, and I’m sure it will get better. Hopefully the beta stage won’t go on for too long, although Google does have a track record of spinning these things out: Google News is still in beta after a fairly long stretch. But even so it’s worth the wait–with any luck, this application will inspire richer, more interactive web application interfaces and more out-of-the-box thinking about the applications we live with (and sometimes suffer from) every day.
Is GMail a major advance or just major hype?