Posted:


A little over three months ago, we introduced something new called Inbox, and it’s been exhilarating to see how people have embraced the experience. In fact, we’ve received over 100,000 pieces of feedback already. Thank you!

As we keep working to evolve Inbox based on your feedback, we thought it’d be fun to share how people are currently using the product to get things done, and focus on what really matters. Enjoy!
And one more thing. We're opening up invites to Inbox for a 24 hour #InboxHappyHour! If you're interested in trying Inbox, send an email to inbox@google.com from an @gmail.com address before 9am Friday PST and you'll get an invite shortly.

Posted:


Snoozing the alarm in the morning is so satisfying. You get those extra few minutes of sleep without worrying you're going to miss anything. That's exactly what snoozing in Inbox is like. Whether you're in an inconvenient place or simply need to focus on something else first, you can snooze away emails and Reminders to a better time or place without worrying you're going to forget.

For example: maybe today’s crazy busy, but you still want to get back to your New Year's Resolution to clean the garage— whether that’s tonight, tomorrow, or next week. With Inbox you can either snooze using the convenient quick options or by setting a custom time. Inbox responds to your preferences, and adjusts its quick options to match.
Sometimes it makes more sense to snooze your emails to a place, instead of a time. For example, you might want to snooze your ticket to the game, a reminder to buy milk to the grocery store, or even the article Mom sent you to when you get home.
Once you start snoozing, you'll notice that Inbox can make the entire process a whole lot easier. For instance: you can name and save common places.
And if, say, you've resolved to call your Mom more this year, you can just create a reminder. Inbox will help you snooze to a time or place with Assists.
If you ever get ahead of schedule (lucky you!), you can check out all of your snoozed emails and reminders by opening the app menu, and tapping on Snoozed. From here you can edit snoozed items, move them back into your inbox, or just review everything you've snoozed to 'Someday.'
Ultimately, Inbox is about helping you get back to what matters. So give Snooze a try, and take back your inbox this January.


Posted:


During the busy holidays, who can say no to a little extra help? Inbox makes it easy to focus on your priorities by adding Reminders right to the top of your inbox, but we all know how easy it is to "save" to-dos for later. This is why Inbox provides over twenty different types of Assists–handy pieces of info to help you with the next step. Below are a few ways to give them a try, as well as a quick look behind the scenes.

To start, simply add an email address, phone number or link to a reminder.
Next, you could add a reminder to pick up your friend at the airport, pack for your trip to New York or watch a video. Assists may provide your friend's flight status, a weather report for the Big Apple or a link to that video.
There's actually a lot going on behind the scenes to make Assists work. For example, phone numbers and business hours come from Google Maps and customer support numbers from Google's Knowledge Graph. Your contacts and other emails (like flight confirmations, purchase receipts or bill notifications) also help Inbox provide Assists.
Some Assists even combine information from multiple sources to give you what you need. For example, when you create a reminder to return a product you purchased, the purchase date and business from your confirmation email, the business's return policy from the Knowledge Graph, and the current date all combine to give you a countdown of how many days you have left to return your purchase.
Another category of Assists are questions that, when answered, lead to another Assist. For example, if you want to call your dentist, Inbox will ask you who your dentist is and once answered, provide a link to call them.
And starting today, Assists are getting even better based on your requests to make them easier to discover. Assists now help you create Reminders faster by providing smart suggestions as you type (or tap!). If a suggestion has an icon next to it, that means you're guaranteed an assist.
We hope Assists will save you a bit of time over the holidays. As always, if you aren't using Inbox yet and would like an invite, email inbox@google.com and we'll email you as soon as more invites are available.

PS: In the spirit of saving time, Inbox on Android now works with Android Wear. You can now view messages, mark as done and reply without taking out your phone.

Posted:


We know that the safety and reliability of your Gmail is super important to you, which is why we’re always working on security improvements like serving images through secure proxy servers , and requiring HTTPS. Today, Gmail on the desktop is becoming more secure with support for Content Security Policy (CSP). CSP helps provide a layer of defense against a common class of security vulnerabilities known as cross-site scripting (XSS).

There are many great extensions for Gmail. Unfortunately, there are also some extensions that behave badly, loading code which interferes with your Gmail session, or which compromises your email’s security. Gmail’s CSP helps protect you, by making it more difficult to load unsafe code into Gmail.

Most popular (and well-behaved) extensions have already been updated to work with the CSP standard, but if you happen to have any trouble with an extension, try installing its latest version from your browser’s web store (for example, the Chrome Web Store for Chrome users).

CSP is just another example of how Gmail can help make your email experience safer. For advice and tools that help keep you safe across the web, you can always visit the Google Security Center.

This post was updated on December 18th to add a description of the XSS defense benefit of CSP, and to more precisely define the interaction with extensions.

Posted:


Language. It’s the foundation for communication, and an important part of cultural identity. And it’s for these reasons that we’ve made Gmail available in 71 different languages so far—about 95 percent of the world’s internet population. We’re always working to support more languages and the cultures they represent—from Cherokee and Welsh to Mongolian and Zulu—so today we’re proud to add Gaeilge (Irish).

Irish, in case you didn’t know, is the national and first language of the Republic of Ireland. It’s taught to all schoolchildren, and it’s spoken daily in the Gaeltacht, so for many Irish people it sparks memories of a shared history—from summers on the Western coast to the story of Peig and the Blasket Islands.

With Gmail as Gaeilge we’re honored to help bring this Irish tradition online. So whether you’re a committed Gaeilgeoir, or you just want to experience a cúpla focal (a few words of Irish), you can select Irish today in your Gmail language settings.

Posted:


The holiday season is chock full of to-dos. Instead of having to keep a separate to-do list, Inbox makes it easy to focus on your priorities by letting you add Reminders right to the top of your inbox. In fact, Reminders go beyond your typical task list by actually helping you get stuff done. Here are just a few examples:

Inbox helps you cross items off your to-do list faster by providing Assists–handy pieces of information to help you get started, like customer service phone numbers, countdowns to important deadlines, and more.
And sometimes–who are we kidding, all the time–friends and family email you with things they want you to do. With Inbox you can add Reminders to emails: just pin the email, and you'll see a field where you can add a Reminder. Never re-read that to-do, disguised as an email, again!
Of course, it's safe to put off some to-dos. Whether you're dreading that call to your talkative Uncle or simply need to focus on something else first, you can snooze Reminders just like email. You can even set up repeating Reminders for to-dos that happen on a regular basis such as taking medication or paying rent.
Reminders go beyond your inbox. If you use Google Now and want to quickly set a reminder, you can simply say "Remind me to..." and it will appear in your inbox. And if you're using the new Google Calendar app, any reminder you snooze to a specific day and time will appear in your calendar automatically.
No matter what you need to remember, with Reminders, your inbox becomes a centralized place to keep track of the the things you need to get back to, and that's especially helpful during the holidays. As always, if you aren't using Inbox yet, you can email inbox@google.com to request an invite and we'll email you an invite as soon as more become available.





Posted:


The holiday season is a busy time and your email is no different, with photos from friends and family, gift purchases and travel plans completely taking over. You find yourself with less time for email but lots more of it, and this is exactly where Highlights in Inbox can help. Highlights work together with Bundles to show you key information and actions at a glance — saving you time, and keeping you (mostly) sane this time of year :). For example:
Highlights surface quick actions like “Track package” and “RSVP” before you even open a message. This way you can actually do stuff, and not just view stuff with Inbox.
Thanks to Google Now, Highlights also include useful info from the web — like real-time flight status and package deliveries — even if it’s not in the original email.
And if you’re using the new Google Calendar app, your holiday travel will be highlighted by Inbox, as well as get added to your calendar automatically.
We hope Highlights help you stay on top of your email during the holidays and beyond. If you're a developer interested in Highlights, learn how to create emails with structured data on the Developer Blog. If you aren't using Inbox by Gmail yet, look for an invite from a friend or email us at inbox@google.com to get an invitation as soon as more become available.




Posted:


Editor’s note: Be forewarned that the following post has much more technical mumbo-jumbo than our normal fare, taking you behind-the-scenes of the development of Inbox. So if you’re a practicing engineer, an aspiring hacker, or just plain interested in knowing how the sausage is made (mmmm sausage), read on!

Gmail was born over 10 years ago, entering a world dominated by flip phones, trucker hats, and based on today’s standards, sluggish web applications. Every click on a webpage meant a multi-second wait and a full page refresh. So when we developed Gmail, we took a different approach—building a new genre of web app that ran in the web browser and relied on rich javascript logic and a local data model. This allowed many of those clicks to be handled right within the browser without waiting for the server at all. Fast forward 10 years and this architecture is the norm, having been adopted by most websites and supported by a plethora of frameworks and tools (e.g. AngularJS, Meteor, Backbone, Ember, NodeJs).

But in those same 10 years, a lot has changed. The capabilities and diversity of devices has exploded. Users expect to be able to move from a laptop to a phone and have their apps work flawlessly. As a result, developers are facing a new challenge: how to build a high-quality app across platforms, such as Android, the web, and iOS, without sacrificing quality or execution velocity. As a developer, maybe you’ve asked yourself, do you rewrite your app three times to optimize it for each platform, wringing out every last bit of performance and polish? Or do you aim to get the app to market sooner by building a web-based “hybrid” app that leverages the same technologies across platforms (but potentially sacrifices integration and user experience)?

Facing the challenge
Those were the questions that weighed heavily on us when we first started building Inbox. We’d been working on Gmail for years and knew our users would expect whatever we built to be as fast and polished as Gmail is today right out of the gate. And that led us to the decision to build three separate native apps to fit seamlessly into each of our respective target platforms: Android (via Java+Android SDK), web (via JavaScript+DOM/CSS), and iOS (via Objective-C+UIKit).

Of course, there are a number of elements of Inbox that are shared across the three platforms: code for managing network communication, caching objects, local persistent storage, managing user edits both locally and remotely, and supporting it all while offline. This logic must be faithfully and correctly implemented and kept up to date on all three clients. Rewriting it three times in three different languages would soak up substantial engineering resources and slow down how quickly we make improvements to Inbox.

Cutting the Gordian Knot
In order to address this challenge we took a novel approach in which data model and application logic (conceptually the “Model” in “Model-View-Controller”) is written once in Java. This data model abstracts concepts unique to Inbox like Conversations, Reminders, Contacts, and Labels, and provides a fully observable data model for convenient binding to the user interface (UI) layer. We built the Inbox app for Android directly on top of this Java data model.

The plot thickens
On the web, the story gets more interesting. We use the open sourced GWT cross compiler to translate the Java data model into JavaScript, which we build on for Inbox for the web. In recent years, GWT has made great strides in being able to output translated code which is conveniently and performantly accessed from native Javascript. For example the Reminder.snooze() method provided by the Java data model is exposed in exactly the same way in JavaScript.

For iOS we developed the now open source J2ObjC cross compiler to translate our Java data model to Objective-C, and again we get a natural API on which to build our native iOS Inbox app (complete with -[Reminder snooze]). The astute reader may wonder how we deal with the impedance mismatch when translating from a garbage collected language (Java) to a reference counted one (Objective-C). Generally, J2ObjC relies on Objective-C autorelease pools, so objects normally garbage-collected are instead freed when a pool drains. One problem with this approach is reference cycles; in places that cycles exist in our Java data model, we use a Java annotation to identify the @WeakReference. When transpiled, the corresponding property in Objective-C will have the __weak modifier, thus breaking the retain cycle. In practice we’ve found this to be a relatively minor problem and we have automation tests that flag the rare cases of new cycles creeping into the object model.

Conclusion
If you’re building an application that (a) has significant UI independent client logic, (b) is targeting multiple platforms, (c) must not compromise on user experience and polish, you now have a new option to consider: a shared, cross compiled data model powering fully native application UIs. This has worked well for Inbox, where we are sharing roughly two-thirds of our client code, and have delivered a product with the same functionality and ship date, without having to rewrite the entire thing three times. Want to learn more about the technologies that power Inbox? Check out http://gwtproject.org and http://j2objc.org.

Posted:


One of the first things you'll notice using Inbox is that it feels less cluttered and overwhelming with messages grouped into Bundles.
Bundles, illustrated by Manu Cornet, Software Engineer on Inbox
Bundles expand on Gmail's categories so you can stay organized with less effort and read the most important messages—like those from friends and family—first. You'll also experience less interruptions since bundled messages don't create a notification on your phone by default.
With Bundles, promotions are neatly organized, purchases are in one place, and all your trip information is together all so you can deal with related messages all at once. For example, you can open up a bundle, quickly pin the messages you want to keep in your inbox and sweep away the rest.
Of course that's not the only way you're in control. You can also teach Bundles to adapt to the way you work by choosing which messages you’d like to see grouped together and when they appear in your inbox: as they arrive, once a day, once a week or even skip the inbox entirely.
Try setting your Promos and Social bundles to once a day and see if that helps you focus on other messages first.

Bundles work together with Highlights to give you just the information you need at a glance so stay tuned for a closer look at Highlights next week. If you aren't using Inbox by Gmail yet, look for an invite from a friend or email us at inbox@google.com to get an invitation as soon as more become available.

Posted:


Today, the Gmail app for Android is getting updated with a more modern style, sleeker transitions, and a few other handy improvements.

As part of the new design, there’s now a convenient reply button at the bottom of every message, making it quick and easy to continue a conversation when you’re on the go. And if you access the app on your Android tablet, you’ll notice it’s easier to switch between accounts and the different inbox categories.
Lastly, we know some of you have email addresses that aren’t Gmail (it’s okay to admit it). The updated Gmail app now supports all email providers, which means you can now set up a separate inbox for, say, your Yahoo Mail or Outlook.com addresses using POP/IMAP.
The updated Gmail app will support all Android 4.0+ devices, so look for it in Google Play over the next few days and let us know what you think!