Hacker News new | past | comments | ask | show | jobs | submit login
The Founding of Google Maps (2015) (medium.com/lewgus)
142 points by ycombonator on Oct 6, 2019 | hide | past | favorite | 46 comments



I sold my mobile maps startup to Google around the same time and worked closely with the where2 guys. This article sounds like the result of a casual conversation with Noel and not a well researched piece. A number of inaccuracies as far as I can remember. (not blaming Noel to be clear)


> A number of inaccuracies as far as I can remember.

Do you mind clarify these?


Two clear inaccuracies are that the team worked out of the mountain view office and they joined months before the ipo.


For an in-depth visual history of Google Maps, check out Version Museum's coverage (48 images):

https://www.versionmuseum.com/history-of/google-maps-website


This is such a cool website! Thanks for sharing


Remember when Google Maps had a no-JS fallback instead of a snarky message?


'But Larry Page and Google were not interested in application software. “We like the web,” he is said to have told Lars Rasmussen, one of the Gordon’s fellow co-founders. And he set the team a deadline to get their idea working in a web browser.'

Building for web still underrated


Now you can build for Google Amp or Google Play, and soon another of Google's walled gardens, Google Stadia.

Long live the web!


Especially by Google. The web as it is meant to be: open standards, without control by any single large entity, a level playing field.


I was hoping for a little more detail around the beginnings of AJAX. I know it was added to IE to support Outlook in IE but I thought Maps was the first big use of it outside of Outlook.


AJAX's origins are actually really cool. It started before XmlHttpRequest. If I recall correctly, when the user took an action that required a server response, the javascript would make a 1px by 1px iframe and load it to a specific URL with the important information in the query parameters. The response would look something like this

    <html>
     <head>
      <script>
       someGlobalFunction({
        searchResults: [
         {"name": "Joseph Paul"},
         {"name": "Joe McCray"}
        ]
       });
      </script>
     </head>
    </html>
Then once the iframe was loaded, `someGlobalFunction` would handle the results and update the page.


A lot of early web apps heavily abused this pattern - I worked on a web framework that used iframes to manage widget state, and of course at that time everyone had to support IE5 and 6. But those browsers by default had this charming noise (an audible click) every time a page loaded or iframe loaded. When you would click a widget button you’d here this curious storm of clicks as the iframes all reloaded.

That culminated in a super awesome bug called “The Click of Death” where sometimes on IE6 you’d click an interface element, hear a huge train of clicks, and then ominously, it would fall silent and IE would freeze (hard lockup, no browser interaction possible).

Turns out we were deadlocking on CSS and JS loads in those iframes - IE6 only allowed two simultaneous connections, and if you got out of order you couldn’t load an iframe because the connections were waiting to clear the CSS item the JS needed to load.


But those browsers by default had this charming noise (an audible click) every time a page loaded or iframe loaded. When you would click a widget button you’d here this curious storm of clicks as the iframes all reloaded.

Wow. I'd forgotten about that. And all these years later, now I know what was going on.


XML Data Islands were also an early version of XHR that MS introduced in the late 90s. It allowed you to load XML sort of like an image, and then hook into the loading events .


Nah, the idea of realtime communication between browser and server is as old as javascript. I implemented my first version in 1997, using hidden iframes loading scripts, but I don't imagine I was the first to do so.

Relevant to the article, I actually also implemented a draggable map that loaded tiles dynamically on demand for a little failed outdoor startup in 1998. The limiting factor back then was actually the server. You just couldn't store enough tiles on the drives of the day, or generate them fast enough from gis with the machines available.

The thing would work nicely, so long as there was only one person using it. ...which isn't really the sort of scale one would wish for in a web app.


> The limiting factor back then was actually the server.

Do you still feel confident that the server was an unsolvable limit? Like, the expectations for map resolution were not all that lofty in 1997, and it's still today pretty common to precompute tiles at different ranges/scales.


Our tiles were essentially USGS topo maps, generated by GIS on the backend. This pre-dates even IE's first vector stuff, so the only way to deliver things like this was images (with transparent .gif overlays for things like our trails and markers).

The only two options available were pre-computing and storing, or generating on the fly. Drives were nowhere near big enough to store enough precomputed tiles to be useful. Machines weren't cheap enough to buy the sort of computing power (on our budget) to generate on the fly, since a handful of users could peg a machine.

We might have been able to write our own fast, stripped down, GIS renderer to get costs down a bit. Instead, we took the 90s option of burning through our VC as quickly as possible and hitting the ground hard.

It was a fun time.


Sounds like a capacity issue. How many tiles can you store on a hard drive with a maximum capacity of about 6GB? Especially at 1997 prices.


6GB doesn't sound untenable if one were to store map/graph data in some optimized text or vector form, rasterizing tiles as needed with a cache mixed in. Maybe keep the 20-mile tiles hot all the time... I guess this depends on the geography covered and use case though.


Still, think of the expense. Plus you need at least second for backup. And probably a whole bunch of them in production to handle many users. Think about the web in 1997, before "scalability" was even a word.


GMail was a heavy AJAX user and predated Google Maps.


Oddpost predates GMail and was heavy AJAX. Was bought by Yahoo to become Yahoo mail

https://en.wikipedia.org/wiki/Oddpost


Alex Hopmann (Creator of XMLHttp) used to have a blog post on his site about the history of Ajax. Looks like his site is offline now, but here's an archive:

https://web.archive.org/web/20170424220609/http://www.alexho...


Whenever people talk about how IE ruined the internet, I think about AJAX. I actually thought IE was great for the web. A poignant example I remember was, if you got a /TR /TD out of order, Netscape wouldn't show the web page at all. It'd work fine in IE though.

IE just made it so much easier to move fast in web development. People blast IE, but I really don't think the web would be as good as it is today without it.

Contrast that with what Chrome has done to the web. Not good.


AJAX is the one feature people can point to as something good that came from Internet Explorer. That and maybe their take on the box model. But virtually everything else they got wrong. Worse yet, they got complacent with their lead and web development stalled for years as a result.

Other browsers have done far more to get us to where we are.

Chrome introduced a modern security model and many useful APIs and protocols (including HTTP/2). Firefox popularized the concept of browser extensions and developer tools like Firebug. Safari made much possible by opening WebKit, such as Chrome and mobile browsers. Opera invented half of the original browser concepts including tabbed browsing.

AJAX was largely responsible for the initial push to modern, dynamic websites, but it doesn't score enough points to make Microsoft the good guy in this history.


> Safari made much possible by opening WebKit

Just to give credit where it is due: they had to, since they used KHTML, under LGPL, a pretty good browser engine at the time.


Also css, early on.

Anybody remember LAYER tags?


AJAX has been bad for the web. Letting Javascript make requests without explicit user action & vetting of whatever it's sending is basically the reason the web's so messed up and user-hostile.


all this could be done without AJAX. Just loading a javascript file would enable this.

Prior to AJAX, sending info was done by loading a "transparent.gif?value1=x&value2=y&value3=z"

It's not technology that has ruined the web. It's greed.


Even the earlier methods required JS to be able to trigger requests not explicitly intended by the user. And at least they usually fired up a loading bar at the bottom of the browser, so you could tell shenanigans were happening.

AJAX made that cleaner and broadened its use, but yes, you could already make requests with Javascript that the user didn't want you to or didn't care to make for any purpose of their own.


I was hopping for any detail.

The ajax part was not that innovative. As with every product that succeed, the content was awesome. How did a startup with 2 people living "out of maxed out credit cards" in early 2000s even acquired mapping data in the first place?


Does anyone remember Microsoft Terraserver? An extremely slow mapping solution that predates Google maps.


I do! I remember showing everyone in the family black and white satellite images of our neighborhood.

I seem to recall it was the first place any of us had seen satellite images outside of movies or CNN, and certainly the first place we had seen images of where we lived.


I remember using streetmap.co.uk to look at maps in the UK while in secondary school, so it probably pre-dated Google Maps. Looks like it serves tiles styled on Ordnance Survey maps of the country.



Wordpress really is everywhere


At the time it was one of the largest publicly accessible datasets.


Great read! I recently read Bill Kilday’s book: Never lost again[1] which is a fantastic read if you want to learn more about the pre-google-maps and google earth days.

[1]: https://www.amazon.com/dp/0062673041


Not to be confused with Google Earth, which was purchased from Keyhole.


I was about to say. The book about Keyhole, Never Lost Again, is a great read. I burned through it in less than 48 hours.


Someone unrelated but I met Luc Vincent, an instrumental leader in developing Streetview. Although he's at Lyft L5 now, it's amazing to see how Google is able to expand to so many domains.


This story is told really well in one of my favorite podcasts, the Acquired Podcast: https://www.acquired.fm/episodes/google-maps. Highly recommended as are all of the other episodes.


The two co-hosts' valleyspeak inflections became intolerable. I'm sure their story was more complete than the medium article, but it was like Guy Raz times two.


The good old days when it had a from: and to: by default instead of needing extra steps.


Typical medium article. Scant and clickbaity (fell for it this time).

Is there a way to block all medium articles from my feed?


I am sure you’ll find an article on medium about that. Probable title: “7 great ways to block all medium articles from your feed”

Sorry for the irony... I hate medium too :)




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: