<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.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.
Wow. I'd forgotten about that. And all these years later, now I know what was going on.
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.
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.
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.
https://web.archive.org/web/20170424220609/http://www.alexho...
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.
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.
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.
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.
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.
Anybody remember LAYER tags?
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?