Why (and how) we've switched away from Google Maps
blog.nestoria.co.uk
blog.nestoria.co.uk
I'd advise that everyone at least explores the possibilities out there, though. I'm making a mobile app right now that uses roadmaps, and have ended up generating my own map tiles using TileMill and open data. It's surprisingly easy to do, and makes things like offline caching (not possible with the Google Maps license) possible.
OSM is of course an excellent product for people who want to do more than the off the shelf google functionality.
It does not surprise me in the least that savvy users will find other arrangements.
Clearly something doesn't add up (though it could be as simple as the non-engineers don't get as much scrutiny. Shouldn't Google want the world's best sales reps too?)
As for the questions, they certainly don't ask any that are in the article. Steve Yegge's article covers the exact category of questions they ask:
http://steve-yegge.blogspot.com/2008/03/get-that-job-at-goog...
I don't remember the exact questions I was asked, and signed about 80 pieces of paper saying I would Never Speak Of Them, but they are of the style where you must know X and then use pieces of X to solve completely unrelated problems. (X could be, for example, quicksort.) Graphs, algorithms, and data structures are essential, but nobody is going to ask you "implement a binary tree"; that is way too easy to study for. (I'm guessing that discrete math questions are also common; but because of the position I was interviewing for, they replaced those with testing and refactoring questsions. Which was good, because I was never good at discrete math.) I had not seen any of the questions they asked before, and two of them were interesting enough to keep me thinking about them for several days. (I was disappointed to discover, while implementing my solution to one, how easy it is to brute-force problems involving English words. There just aren't very many words. But the idea is what counts, and brute-force is not going to get you hired :)
Since I've been hired by Google, people have pointed me at a lot of "popular media" articles or videos about Google, and not many have matched my experience, but then again, I haven't actually started work yet.
(The linked article also talks about Bank of America intervewing, which doesn't have a standardized process. I know because I worked there and asked different questions, 100% chosen by me, every time I interviewed someone. So while one person at Bank of America may have asked "What animal are you?", that's not some sort of company policy. So it's a bit disingenuous of the article to name-drop Bank of America there.)
One of my engineering interviewers took notes on a computer instead of on paper. Clearly your mileage may vary.
Check what an ex-Googler has to say on the brain teaser questions: http://www.technologywoman.com/2010/05/17/debunking-the-goog...
OpenStreetMaps has its own data but it is provided by a community that does not have as much momentum as Wikipedia, even New York City data is pretty much incomplete[1]
Part of the problem is that people really do not know anything about cartography or how a dynamic maps must behave, even worse the majority of people do not even know how a web mapping service is implemented.
By the way, you can use OpenLayers with many tiles, including Google: http://openlayers.org/dev/examples/google.html
This is no longer true. Google spent millions of dollars paying people to drive cars around collecting data for them. The majority of their data nowadays is their own (in most of Europe, Canada, and the US at least). Recently, they've even convinced their users to work on their data for them with the Map Maker product (all while holding the data behind a non-commercial, non-compete license and charging 10's of thousands of dollars for the right to use it).
I think the key factor here is something Google does very, very well: UI. There is just something about google maps that makes it more appealing to the eye. And that's crucial to create a great service. I saw a post long ago (i couldn't find :/) that compared the graphic style of Maps, Bing and others. Google just nails layout, ease of understanding and other factors. I believe it is this key factor that makes the difference.
More importantly, with OSM you can do whatever YOU want with the actual underlying data. A great example are these beautiful maps: http://mike.teczno.com/notes/osm-us-terrain-layer/foreground...
This url you have put is actually much better than Google maps somehow. It's way smoother and faster. Pretty cool!
It seems the site is down, but here's archive.org's cache:
http://web.archive.org/web/20110208212952/http://www.41latit...
http://web.archive.org/web/20101223050944/http://www.41latit...
And it's also mentioned repeatedly that they were perfectly willing to continue with Google Maps until they had a bad sales experience and were estimated a figure that they couldn't pay.
When you say that and you put the charging issue third, it makes everything else look like a rationalization.
ETA: And as I go to OpenStreetMaps and see it struggle to serve me a page showing my house (and showing exactly the same wrong place for my house that Google Maps does, because it's using the exact same data), it doesn't much make a case for anything but "well, at least it's free".
OSM is very, very good in some areas and not so good in others (especially in the US).
Good luck.
And regarding satellite view, how would you even imagine volunteers making satellite images? Basically anyone can get a GPS receiver and make maps, but I have yet to see an amateur hobby satellite in orbit. (I guess you could use R/C planes with GPS and cameras, but that would be incredibly time-consuming and not ideal at large scales.) However, even if you could do that, it's just not goal of OpenStreetMap. You can't use satellite images for routing, there is no legend, etc.
And I think that they don't allow external satellite images because of their philosophy on freedom - similarly to you having to explicitly allow installing non-free packages in Debian.
Across the world, I can't answer. Here in Western Australia, one of the largest single states in the world, there's been digital mapping for two decades now, predating the rise of Google maps.
Data from MODIS satellites is downloaded direct from the sats as they pass overhead and streamed to those with an interest. The better quality data comes from the aerial surveys performed each and every summer over populated areas which produce several thousand digital scans of wet negatives (they may have recently moved to high res digital in the planes, I've been out of the details for a few years).
Google didn't develop their mapping tech initially, they purchased the starting technology from Keyhole, a US based company (iirc), it's worth noting that several international companies had equal or better offerings that were considered including our locally developed technology from ermapper which is now owned by Lecia.
http://www.erdas.com/company/news/newsreleases/07-05-21/Leic...
As for volunteer contributions it's been our experience that if you provide data access and annotation tools then many competent people that care about ground accuracy (forestry services, land owners, search & rescue, exploration crews, etc) will happily add value.
Also, the best of OSM is in places like Germany where in some areas they're mapping down to the level of individual trees and lampost locations as well as where animals are located within zoos.
http://bestofosm.org/#best-of-de-berlin-zoo
Using the OSM's online mapping tool is fun. I really enjoyed doing the maps for around my home - it made me look up streets I'd never noticed. I felt I learned a lot about my local area.
[1]: http://code.google.com/p/osmeditor4android/ or Vespucci in the Android Market
The good thing is that, unlike Google Maps, you have complete power to update OSM with the correct information for your locale. Get mapping!
Can't you also do that with Google MapMaker (depending on the country)?
Google Maps was first published in 2005, so it's been doing nothing for the "last 10 years"... And during that time they've changed base map data providers several times in most countries (Navteq -> Tele Atlas -> Google), making it incredibly unlikely that such errors would have persisted for the whole time.
I might have gotten very lucky there, but it can't hurt to report it, right?
So now I have two libraries to support and users to download, much less documentation to rely on, and am not completely abstracted.
So while the "noble" reasons were there, they probably had enough other things to do (those that make money directly). And thus the new Google Maps pricing actually was the catalyst.
When creating a mapping application, it's extremely important to stay away from that. There's no point to creating an application that's just a styled Google map. There has to be a point to having your application centered around a map. I think a drawback of using Google maps (or any of the mapping services) is that it's so familiar to people. A lot of people might assume that the application your building is just a Google growth. Fortunately, Google has a good deal of features built into the API to keep that from happening. You can pretty much design what your map will look like down to the most seemingly superfluous of details.
Mapping applications are so awesome because of how interactive and driven by visual exploration they are. I think there will be a lot more of them doing things that we don't expect to see in the future.
One last note: Any TileMill developers out there? What would your advice be for someone who is making a mapping application/considering moving over from gmap?
Yes, using an abstraction layer will of course add some size, but once you gzip and have the client cache it, it's negligible.
Going completely over to OSM takes alot of work when building your own hardware stack, but our alternative (with relatively low traffic), is paying google maps $40k next year, and who know what the following...
As they deploy more enterprise solutions, they will certainly need to provide better sales/support systems around those, or they risk losing market share like this.
This sounds to me like the age-old argument us techies make to laymen. Use open source! If there are problems you can fix them yourself! Except these people are not programmers, nor do they have any interest in being one.
I'm not a cartographer, I have no interest in being one. I certainly am not signing up to integrate OSM into what I'm building and be on the hook for user complaints about missing map data, and have to do that myself.
Not to mention, contributing to OSM in the strictly legal way is not at all trivial - for legal reasons you simply cannot consult any other map, so basically you'd have to go out, walk/drive/bike around your area with paper and pen in hand and "map" it yourself. That or trust you have perfect memory w.r.t. your city. The bar for contributing back is high, can we blame people when they'd rather just have a map that worked?
It is very rare for OSM to be completely bare in a major metropolitan area (especially in the US). It could be that the addresses are gone, but at the very least the road network will be there from the TIGER import.
> I'm not a cartographer, I have no interest in being one. I certainly am not signing up to integrate OSM into what I'm building and be on the hook for user complaints about missing map data, and have to do that myself.
You don't have to be a cartographer to add data to OSM. You sign up, point and click or drag and drop. It takes minutes and you don't have to have any particular knowledge before hand (especially cartography). Having said that, I completely understand not wanting to be on the hook for user complaints. That's why Google charges thousands of dollars. Some people (the writer of the blog post in particular) aren't interested in paying that.
> Not to mention, contributing to OSM in the strictly legal way is not at all trivial - for legal reasons you simply cannot consult any other map, so basically you'd have to go out, walk/drive/bike around your area with paper and pen in hand and "map" it yourself. That or trust you have perfect memory w.r.t. your city. The bar for contributing back is high, can we blame people when they'd rather just have a map that worked?
This is not true. Mapping with paper and pencil on foot or bike or car is a great way to get outdoors and thousands of people use this technique to add to OSM every day, but you can also use any one of the dozens of aerial imagery backgrounds available to help you create data from memory.
I don't think anyone claims OSM is simply missing entire cities - but entire developments in cities are definitely missing in many cases.
> "You don't have to be a cartographer to add data to OSM. You sign up, point and click or drag and drop."
Not true. OSM gives you a handy satellite image reference, so you can certainly fill in streets - but unless you're from the area, you are poorly qualified to decide what type of street it is, and you certainly don't know the street names. In other words, the common contributor is empowered with little more ability than to trace satellite imagery, with no knowledge of place names, street names, or landmarks that are necessary to build a real map. In fact, the only places that the average contributor is qualified to map is the area directly around themselves.
This may work for a casual contributor who wants to see their neighborhood on OSM, but it's entirely unrealistic for a developer who wants to support his/her users.
Consult another map? That violates the terms for contributing to OSM - for good reason, they want to steer absolutely clear of any allegations of plagiarism or copyright infringement.
So if someone complains that my app has missing map data, unless the user is located near me or one of the areas I'm intimately familiar with, they're SOL until someone else fixes it.
> "Mapping with paper and pencil on foot or bike or car is a great way to get outdoors and thousands of people use this technique to add to OSM every day"
This makes no sense at all. I get the spirit of the project, and I fully support it. In fact, I have contributed to OSM. But expecting this out of most developers, or even a significant portion, is lunacy.
This is like telling your IT manager "we should use this very incomplete library. The code is open, so any missing functionality or bugs we can fix ourselves! This will be a great benefit to our coders, so they can crack their knuckles on some problems they don't usually get to work on."
Which is entirely true, but misses the point by a mile - developers may be interested in contributing to OSM (I know I am), but how many are willing to ship this in a production environment, where the goal is to build a great product, not baby-sit an incomplete data provider?
There are plenty of organizations that do this. Google spends thousands of developer hours and millions of dollars contributing to open source projects. And it's not just for the developers: they recognize a better resource and use it. When their needs outgrow the library's capabilities they add to it.
There are at least a few companies doing this exact same thing for OSM data, too. For example, MapQuest and Bing both use OSM data in some of their products and contribute data and tools/source back to OSM.
> ...developers may be interested in contributing to OSM (I know I am), but how many are willing to ship this in a production environment, where the goal is to build a great product, not baby-sit an incomplete data provider?
As I've previously mentioned, OSM is certainly inadequate in many places (and the community is working really hard to fix that -- thanks for contributing!), but in some places it's _MUCH_ better than Google. It's certainly a business decision: do you want to pay Google $10k+/month (where it was $0/month not 2 months ago) to run your site or do you want to use OSM? If your business's primary area of interest is Europe (especially Germany), then you probably want to use OSM. If you want to cover the entire world or don't want to deal with the lack-luster-but-improving data in the US, then use Google.
Obviously developers won't start driving around in cars to map things out, but I wonder why the map-oriented communities haven't supported OSM? And surely map-oriented developers could start an initiative to highlight less-well mapped areas?
Now if only I could use Twilio and Google Payments here. We can't even buy music from iTunes, despite everyone having iPods and iPhones for almost as long as they've been around, and Apple stores in most major malls.
Although osm contributing can be a lot of work, its very easy for lots of people to add some data, esp. about where they live or grow up. Is there a coffers shop, school, or path near where you grewbup that's not on the map? Every little contribution helps. People are often proud to see their home correctly represented on the internet.
Many of your complaints are mostly valid if there is a totally accurate alternative map available, but its not the clear cut. In many places osm is of better quality than Google maps, and considerably cheaper than the national mapping/ordnance survey agencies. There is no perfect solution.
I was watching a YouTube demo made by the 3d mapping company Apple recently bought. During, I caught on to some new developments that are quite astonishing (e.g. social embedding).
You can read the HN post here: http://news.ycombinator.com/item?id=3393011
we're more of a small business than a startup. We've been going for 6 years and are nicely profitable. The issue is the prices quoted were more of the level for large corporate multinationals - hundreds of thousands of dollars/year just for our UK service (one of eight that we operate).
Suppose your government provides electricity for free below a certain threshold. Suppose you exceed that threshold. Suppose a rude person calls you up and asks you to pay. Suppose you can't afford it.
Should you then complain that they were rude and how it was their rudeness that caused you to switch providers? Or do you simply explain that you found a cheaper provider that aligned with your long-term goals? Was the point of the post to try to give Google customer service a black eye? Because, to me, all it did was betray pettiness.