Slashdot Mirror


Bosworth On Why AJAX Failed, Then Succeeded

An anonymous reader writes "eWeek has a story describing a talk by former Microsoft developer Adam Bosworth, now a VP at Google, entitled 'Physics, Speed and Psychology: What Works and What Doesn't in Software, and Why.' Bosworth depicts issues with processing, broadband, natural language, and human behavior; and he dishes on Microsoft." Quoting: "'Back in '96-'97, me and a group of people... helped build stuff that these days is called AJAX,' Bosworth said. 'We sat down and took a hard look at what was going to happen with the Internet and we concluded, in the face of unyielding opposition and animosity from virtually every senior person at Microsoft, that the thick client was on its way out and it was going to be replaced by browser-based apps. Saying this at Microsoft back in '96 was roughly equivalent to wandering around in a fire wearing matches,' he said. 'But we concluded we should go and build this thing. And we put all this stuff together so people could build thin-client applications... Now you hear about AJAX all the time, but this was built in '97,' Bosworth said. Yet, AJAX failed for a variety of reasons, including some 'big mistakes.'"

9 of 265 comments (clear)

  1. Re:i hear... by Kalriath · · Score: 5, Informative

    Actually, strangely, he speaks truth. Since V4 or V5 or something of Internet Explorer, the Microsoft.XMLHTTP object shipped with the browser. Before that, it was a free download. This is the core of what XMLHTTP is based on - confusingly enough (and perhaps frighteningly) Microsoft was the first to implement XMLHttpRequest in their browser. Unfortunately, it was ActiveX based. But it did get the other browser makers thinking "how about..." which is something that I can only consider to be a Good Thing for us developers and users.

    Microsoft was also the first to support the .selectSingleNode and .selectNodes functions of the XMLDocument object. Thankfully Mozilla, Opera and the KHTML team picked up on that pretty fast.

    --
    For a site about things like basic rights, Slashdot users sure do like to censor "dissent".
  2. Re:i hear... by dedazo · · Score: 3, Informative
    The first successful, viable, externalized commercial "AJAX" application was Outlook Web Access (OWA). And it was that until GMail "discovered" out-of-band JS requests and some blogger re-christened it "AJAX".

    I guess there's a joke here somewhere about Google having to steal talent from Microsoft, given that Microsoft is usually accused of the same thing.

    --
    Web2.0: I love when people Flickr my cuil and digg my boingboing until my google is reddit and I start to yahoo
  3. Re:i hear... by Anonymous Coward · · Score: 1, Informative

    Xmlhttprequest wasn't necessary. You could get similar functionality using a hidden IFrame to load and execute JavaScript.

  4. Re:Me too. by lysergic.acid · · Score: 2, Informative

    just have a server-side script fetch the page from the remote site?

  5. Re:...has yet to succeed... by merreborn · · Score: 2, Informative

    Wow, you can write a basic calculator in only 300 lines of xforms code! That's so much better than the 30 lines of javascript it'd take!

    http://en.wikibooks.org/wiki/XForms/Calculator

    I can't wait!

  6. Re:i hear... by xC0000005 · · Score: 2, Informative

    Yeah, and Exchange 2000 used XML & Javascript for a massive chunk of its functionality. Then again, 5.5 OWA had done a bunch of javascript (but XML, not so much).

    --
    www.voiceofthehive.com - Beekeeping and Honeybees for those who don't.
  7. The story of XmlHttp by Anonymous Coward · · Score: 4, Informative
    There seems to be a difference of opinion of how AJAX came to be, according to the developer that actually implemented the first prototype:

    http://www.alexhopmann.com/xmlhttp.htm

    The work to create what became known as XmlHTTP was done by folks in the Outlook Web Access, and it was a gradual development, it did not come in the form of a spec by a third party group, but some brainstorming and mixed ideas as those developers were trying to build OWA (they were using clever post backs at the time), he describes it as:

    At some point Brian Valentine (who was still the GM of Exchange at the time) asked us to figure out what to do with OWA for Exchange 2000. There were two implementations that got started, one based on serving up straight web pages as efficiently as possible with straight HTML, and another one that started playing with the cool user interface you could build with DHTML. When I first got a demo of the DHTML work that Jim Van Eaton and Bob Gering were doing I was just blown away. However they were basically doing hacky form-posts back to the server and had some of the same scalability and dynamic data problems of the old version.
    The guy that implemented the feature joined Microsoft in 1997, and would not start working on it until 1998 and the work did not start until 1998 (he said "probably in late 1998"). In fact, according to that history, they had to scramble to get the feature into IE5 (finally released in March 1999):

    Meanwhile the IE project was just weeks away from beta 2 which was their last beta before the release. This was the good-old-days when critical features were crammed in just days before a release, but this was still cutting it close. I realized that the MSXML library shipped with IE and I had some good contacts over in the XML team who would probably help out- I got in touch with Jean Paoli who was running that team at the time and we pretty quickly struck a deal to ship the thing as part of the MSXML library. Which is the real explanation of where the name XMLHTTP comes from- the thing is mostly about HTTP and doesn't have any specific tie to XML other than that was the easiest excuse for shipping it so I needed to cram XML into the name (plus- XML was the hot technology at the time and it seemed like some good marketing for the component).
    Which is at odds with Bosworth's claim that they helped invent AJAX in 96-97.

    Like many people at the time, the idea of calling code on the server was around, Netscape even shipped in 1997 shipped a browser that contained an IIOP client (IIOP is a binary protocol, part of CORBA) that allowed the browser to communicate with IIOP servers on the other end:

    http://cgi.netscape.com/newsref/pr/newsrelease389. html

    Forté and Netscape have already begun work on this seamless access. Forté has exposed its services to IIOP and is working with Netscape to allow Visual JavaScript to call these and other IIOP-components. Using Netscape Visual JavaScript, enterprise developers can rapidly build Crossware, a new category of on-demand applications that run across networks, operating systems and platforms and are based on open standards. Crossware is an ideal mechanism for customers to take advantage of the distributed functionality of Forté applications within an Intranet or Extranet environment.
    This was part of the "Netscape ONE" an effort to create a fully web-based development platform.

    At the time Netscape was touting the benefits of using this new API as a way of building rich applications. So the idea predated Microsoft and Bosworth, but never got mass adoption.

    So who came up with the idea first is hard to tell. But it seems obvious that Ajax did not originate within Bosworth's own team in the 96-97 time frame, but in another team: the Exchange group in late 1998 to 1999.

    As they say, "Success has many fathers, and failure is an orphan."
    1. Re:The story of XmlHttp by alexhop · · Score: 2, Informative

      Both are to some extent true- What we call AJAX today is a collection of many things- The basic dynamic HTML infrastructure. The XMLHTTP & async network communication piece. And the patterns of tying it all together. Adam and his team (especially folks like Rod Chavez, Michael Wallent and many others) invented the Dynamic HTML part which was miles beyond what Netscape was doing at the time. I just filled in the XMLHTTP piece, and collaborated with many others to do the first major app that tied it together (Outlook Web Access). Without the earlier contributions of the Trident/IE teams, it wouldn't have been possible, and its absolutely true that Adam and many folks he worked with had the conceptual vision for tying it together (he called it weblications at the time). Having said that, they never built a real app with it and the act of using it for real turned up some missing pieces, leading to XMLHTTP as well as several other things that the Trident and XML teams themselves pioneered.

      I'll be writing more notes on this at http://www.alexhopmann.com/

  8. Iframe deprecated? by Yoozer · · Score: 2, Informative

    Where exactly do you see it's deprecated? W3schools doesn't mention it, Wikipedia does neither, and on the W3 page for iframes nothing is mentioned about deprecation. If you mean the oh so hip use of using a hidden iframe to send all kinds of crap back and forth instead of the XHR object, then yes.