Products: How & Why
Pamela Fox Developer Relations
Google Confidential and Proprietary
1
Google’s mission Organizing the world’s information and making it universally accessible and useful
This is our mission. We started with the goal of collecting all the web pages in the world and making them easy to sort through. But after creating Google search, we soon discovered that there was a lot of other types of information in the world, and a lot of different Google Confidential and Proprietary 2 ways that we could be making that information accessible and useful.
How?
Products!
So, we started creating more products, to deal with the plethora of information on the web. There are a couple ways that products Google Confidential and Proprietary 3 are “born” at Google.
But How Are Products Born?
= Acquisition
One way is through acquisition. Google Maps was a product dreamed up by a handful of enterprising developers in Australia. They made a prototype, pitched it to various companies, and when Larry and Sergey saw it, they thought it was a nice way to make Google Confidential and Proprietary 4 geographic information accessible.. And thus a Google product was born! (..adopted)
But How Are Products Born?
= Local Need
Another reason products start is because of local need. In Australia, people have a particular love for searching real estate listings. We noticed that people were typing housing queries into Google Maps here, and not getting many good results, so we decided we Google Confidential and Proprietary 5 should do something about it. Thus, the Google Real Estate Search project was born, and now fulfills a need in the AU market.
But How Are Products Born?
= Feature Parity
Sometimes products are created because we need them to compete. At Google, we value competition because it makes us work harder. When we came out with Gmail, we noticed other popular email systems had calendars. So we created Google Calendar, Google Confidential and Proprietary 6 and made our offering to users much more compelling.
But How Are Products Born?
= An Idea
Sometimes we just think a product is a good idea. At Google, we already have many tools for communication and collaboration: Google docs, Google sites, Gmail, Blogger, etc. But when Lars & Jens (also the creators of Google Maps) proposed Google Wave to Larry and Sergey, they gave them the go-ahead. There are times when we need to experiment with new ideas, even if they’re not Google Confidential and Proprietary 7 necessary or competitive, and hope that they make a revolutionary impact on our total offering.
Deep Dive: Google Maps
We have a lot of products. And we have a lot of Googlers. That’s because there are a lot of problems to tackle on any given product, Google Confidential and Proprietary 8 and we love tackling problems. (That’s what engineering is!) So, let’s do a deep dive on Google Maps, and what makes it hard.
Google Maps: The Product Released in February 2005. One of the first AJAX apps and "slippy maps" implementations.
Features: Searches: •
Addresses
•
Local businesses
•
User content
Driving Directions (Transit too) Traffic Overlay Street View KML/GeoRSS Browsing My Maps Mapplets
Many people think of Google Maps as just a way to find an address or directions, but it actually offers a lot more than that – Google Confidential and Proprietary 9 transit/walking directions, real-time traffic, streetview, user-created maps, photo layers, and more.
Google Maps: The Hard Parts: Tiles
But let’s start with the most basic aspect of Google Maps – the road map tiles. When you create roadmap tiles, you are figuring out how to represent a mass of labels, lines, and shapes at various zoom levels. You need to figure out what is the most important label Google Confidential and Proprietary 10 to show, and how to arrange labels so that they don’t overlap and visually overwhelm. This isn’t trivial.
Google Maps: The Hard Parts: Tiles
Now, it’s not too hard when you’re creating maps for just one part of the world. But one of the things that makes Google Maps (and any Google product) so complex is that is an international product, and must cater to users everywhere. So, for example, we have to decide how to show labels of places in foreign character sets, and decide whether to use a user’s current IP location to affect the Google Confidential and Proprietary 11 language of the tiles. In the case of Japan, we show both character sets, and manage to squash it all in.
Google Maps: The Hard Parts: Tiles
There are even more differences when you zoom in to another country, because every country has its own way of getting around and understanding maps. In Japan, they use 7/11 and MacDonalds as landmarks for navigation, so those icons are rendered prominently on the maps. Another difference is in the icons used for things like churches, hospitals, and hotels. In the US, we simply Google Confidential and Proprietary use a steeple as a church. In Japan, we would need to use separate temple and shrine icons to be understandable. 12
Google Maps: The Hard Parts: Tiles
Now, let’s look at problems with satellite tiles – the imagery that we get from satellites orbiting the earth. First of all, there aren’t enough satellites orbiting everywhere to get real-time data for the whole earth. In fact, much of our imagery can be a year or more Google Confidential and Proprietary old. Right now, we’re standing in a new building.. so new that it appears like a concrete block in the imagery on Maps. 13
Google Maps: The Hard Parts: Tiles
Sometimes, we do get more up-to-date imagery, but it’s just not great quality. The resolution might be low, or it might be covered in clouds. As much as we beg, we just can’t get clouds to get out of the way when we photograph! So, whenever we get new imagery Google Confidential and Proprietary 14 for an area, we have to carefully analyze its quality and decide whether we should replace the current imagery.
Google Maps: The Hard Parts: Tiles
And sometimes we have to make the decision to use different imagery for two regions that are near to eachother. For example, whenever land meets ocean, we fade between high resolution beach imagery and a very blurry blue – there’s no point in storing high resolution imagery of a bunch of ripples over 70% of the world. In some cases, we use different imagery in the same landmass, Google Confidential and Proprietary 15 and that can sometimes lead to quite a mismatch, as shown above. We haven’t entirely solved this blending and choosing problem.
Google Maps: The Hard Parts: Tiles
Now, after we’ve perfected our road map tiles and satellite tiles, we need to get them to align for our “hybrid” view. That means that even teeny inconsequential country roads need to match up. Considering the vector road data comes from a different source than Google Confidential and Proprietary 16 the satellite imagery, they can be hard to align together.
Google Maps: The Hard Parts: Searches "Wellington Hotel, 871 Seventh Ave. @55th St, 55 Street, New York"
Moving on from the tiles to the searches that you do on top of them. Our search box has to interpret a lot, without much help from the user. It doesn’t make you specify whether you’re looking for addresses or for business, it doesn’t make you specify the country of the thing you’re looking for. It just takes strings from users all over the world, and tries to figure out what the heck they’re looking for. And, wow, addresses can be complex. The example above specifies 3 streets, a business name, and a region name that might be a Google Confidential and Proprietary 17 city or might be a state – and the search engine has to disambiguate all of that.
Google Maps: The Hard Parts: Directions
Driving directions are even harder than searches, because we have to figure out where the first location is, figure out where the second one is, and then find the best route between them. That usually means trying to spend the most amount of time on big roads with higher speed limits, but it also means balancing traffic at different times of day. And sometimes it means kayaking across the Google Confidential and Proprietary 18 ocean with a pit stop in Hawaii.
Google Maps: The Hard Parts: Directions
Driving directions get even harder when you’re giving them for a country that doesn’t name most of it’s streets. Imagine having to tell Google Confidential and Proprietary 19 someone how to get from “Unknown Rd” to “Unknown Rd”. It’s not easy.
Google Maps: The Hard Parts: Directions
And then we have the non-driving directions, like walking. These are hard to calculate because most of the data out there is geared towards drivers, and few data sources specify walkable paths. Google Maps still hasn’t figured out my optimal commute, which goes Google Confidential and Proprietary 20 through a underground subway path, a parking lot walkway, and a mall. We still need to find ways to source better walking data.
Google Maps: The Hard Parts: Data
To search for places and to calculate directions, we need a lot of underlying data, which we get from various data sources. But, the world is a massive place, and is constantly under construction, and there will always be inaccuracies in data. So, we needed to find a *scalable* way to get users to tell us when data was wrong. Instead of having each user painstakingly email us with each problem, we actually have them fix the problem themselves, on the map. Of course, we have to engineer moderation and anti-spam Google Confidential and Proprietary 21 mechanisms, but we still get a lot better data feedback with an instant user feedback system.
Google Maps: The Hard Parts: Data
But, there are some issues with letting anyone edit the map, because there is the notion of an “owner” for business results. Should any old schmoe be allowed to edit the Casino’s location? Shouldn’t we only let the owner do it? Well, how do we know who the owner is? We usually send them a postcard with a code at their address. But what happens if the owner leaves, but never tells us Google Confidential and Proprietary that? What if he dies? (Or something less morbid but equally bewildering). These are all interesting issues we face. 22
Google Maps: The Hard Parts: Real-time Data
So far, all the data I’ve shown is data that we update once a year, once a month, etc. But there’s some data on our maps that’s realtime – constantly updated – the traffic layer. To have this layer, we needed to build systems that can take in data from traffic data and Proprietary 23 providers all over the world in a consistent format, and turn that into visual layers for users, andGoogle do itConfidential all in a matter of minutes.
Google Maps: The Hard Parts: Privacy
So, as you’ve seen, we have *a lot* of data. Sometimes, the amount of data we have can be scary for users. For instance, our StreetView imagery lets you view buildings and streets before you visit them. But as a side effect, it lets you view people on the street. So, to make users feel comfortable with this technology, we needed to build technology to detect faces and to blur them. It’s not easy – at the beginning, we were confusing quite a few horse butts with faces. The horses probably didn’t mind much, but we Google Confidential and Proprietary 24 have since improved the face detection to leave them out of it.
Google Maps: The Hard Parts: Storage
Tiles, Data, Images
All the tiles and data add up to a lot of storage on our servers. Our tiles are basically an image pyramid, where each tile on a zoom level splits into 4 more on the next zoom level, and since we go up to 21 zoom levels in some places, that means a massive number of tiles (see the table above). Plus, we have 4 different map types, so it’s really 4 times a massive number. And then of course, there’s all the data for searching and directions. Google is one of the few companies that could possibly store this amount of data, Google Confidential and Proprietary 25 as well as replicate it efficiently for serving users.
Google Maps: The Team
Legal
Product Management
Engineering
Business
Marketing
User Support
As you can see, Google Maps is a fairly complex product. It requires a lot of people working together across multiple disciplines to collect data, discover data privacy laws, engineer systems, lead teams, and of course, get people to use the product, and support Google Confidential and Proprietary 26 them when they do. But there’s one common theme across these roles: everyone loves solving problems, and fulfilling our mission.
Google Confidential and Proprietary
27