Slashdot Mirror


Ajax Is the Buzz of Silicon Valley

Carl Bialik from the WSJ writes "Ajax, or 'Asynchronous JavaScript and XML,' is allowing webpages to update as quickly as desktop software, powering applications like Google Maps and attracting money from Silicon Valley investors, including for a collaboration-software company called Zimbra. The Wall Street Journal reports: 'Zimbra's chief executive, Satish Dhamaraj, says that when he started his company in December 2003, "I really thought that Ajax was just a bathroom cleaner." Now his San Mateo, Calif., business has amassed $16 million in funding from venture-capital firms including Accel Partners, Redpoint Ventures and Benchmark Capital, the firm that famously funded eBay Inc. Peter Fenton, an Accel partner, says Ajax "has the chance to change the face of how we look at Web applications" and could boost technology spending by corporations, because Ajax is also being used to develop software for big companies, not just for consumers.'"

10 of 336 comments (clear)

  1. So, nitpicking... by Dirtside · · Score: 4, Informative

    Shouldn't it be AJAX, not Ajax? Ajax is the Greek warrior.

    --
    "Destroy science and religion. Science would re-emerge exactly the same; but not religion." - Penn Jillette, paraphrased
    1. Re:So, nitpicking... by LDoggg_ · · Score: 3, Informative

      I've never used XML. Rather, we should just be referring to the general sense of using either XMLHttpRequest/Iframes as "Ajax" to keep things simple for consumers.

      IFrames are not required for AJAX.

      All you need to do is have an xmlhttprequest object called by whatever event you like, it can then take the response and then somehow (usally div tag) change the contents of a web page. That's it.
      The use of Iframes is 100% optional.

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
    2. Re:So, nitpicking... by LDoggg_ · · Score: 3, Informative

      The phrase "Dynamic HTML" pretty much sums up what AJAX is, which is nothing more than using Javascript to make server requests and modify the DOM. It's so annoying that for some reason, the press is acting like this is a new technology.

      The interesting part is the first "A" in AJAX, its asynchronus meaning it doesn't require a comlete page refresh to retrieve data not already contained in a web page.
      This isn't new, its been around since IE 5.0. What's new is that browsers other than IE support xmlhttprequest object now. This has enabled companies like google to use the technology, thus creating a buzz.

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
    3. Re:So, nitpicking... by kin_korn_karn · · Score: 3, Informative

      and no system-killing JVM startup. That's what I hated about applets.

    4. Re:So, nitpicking... by ergo98 · · Score: 3, Informative

      The use of Iframes is 100% optional.

      ? The parent poster was giving those two options as alternatives, not as a combination. e.g. if you can't use xmlhttprequest, then you use a hidden iframe to do the background transfers.

    5. Re:So, nitpicking... by LDoggg_ · · Score: 3, Informative

      When I first started using it I tried out several different helper libraries, but found that it all basically just came down to something really easy like this (with better formatting, of course):

      var xmlHttpRequest;
      function xmlRequest(url)
      {
      if (window.XMLHttpRequest) {
      xmlHttpRequest = new XMLHttpRequest(); } else {
      xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
      }
      if (xmlHttpRequest) {
      xmlHttpRequest.onreadystatechange = _processXmlResponse;
      xmlHttpRequest.open("GET", url, true);
      if (window.XMLHttpRequest) {
      xmlHttpRequest.send(null);
      } else {
      xmlHttpRequest.send();
      }
      }
      }

      Do the work with the results something like this:

      function _processXmlResponse()
      {
      if (xmlHttpRequest.readyState == 4) {
      if (xmlHttpRequest.status == 200) {
      //do stuff with xmlHttpRequest.responseXML.documentElement
      } else {
      // do error handling
      }
      }
      }


      YMMV but this generally worked on my target browsers.

      BTW, nice site.
      One suggestion when you hit the (+) to open an item it should turn into a (-) to close it from the same place.

      --

      "If they have both, tell them we use Linux. And if they have that, tell them the computers are down." -Dave Chapelle
  2. Desktop.com by _flan · · Score: 3, Informative

    Desktop.com had this stuff in 1999, but unfortunately the browsers of the day (IE4 and Netscape 4) weren't really capable of staying up long enough to make it worthwhile. There was even a company that had a nice little web-based spreahsheet app.

    Still, I haven't seen a good, platform-independant, integrated sever- and client-side solution yet. Back at Desktop in was *all* client side except the actual persistence of objects so it wasn't really an issue.

    Ah, well.

  3. Re:Clean-sweeps the competition by mooingyak · · Score: 3, Informative

    Well this sounds like fun...

    Hows about

    Decoupled Agile Web Networking

    Wow that doesn't make any sense.

    --
    William of Ockham had no beard. The most likely explanation is that it was chewed off by squirrels every morning.
  4. AJAX is creative glue by joelsanda · · Score: 4, Informative

    Seriously you build upon the failures that DHTML, HTML, Javascript, XML, XMLHTTRequest and you form a system which requires at least a 1 ghz processor just run a very simple GUI.

    AJAX-enabled applications like Google Maps and GMail run fine on my G3 iBook with Safari and OS X 10.4. I don't think they necessarily have to have additional processor requirements on the client side.

    Saying DHTML, HTML, Javascript, XML, and XMLHTTRequest are all failures is a little extreme. Saying each fails at being everything is 100% correct and 200% redundant - nothing is everything. I applaud the use of XML and Javascript to place more processing on the client side. It's not without its problems, but then nothing is everything.

    This is also a good example of how bad Java and Sun has failed. If Sun would've opened up Java, let people distribute it, as well as from day 1 enabled easy RMI over HTTP we wouldn't be up to our necks in a horrible mixture of presentation logic and business logic.

    I agree with this - this was Sun's sweetspot about 10 years ago, wasn't it? Client's connecting to applications so our experience was built upon thin clients instead of desktop applications.

    So here we are, requiring gargantuan browser which are brought to a halt with this AJAX technology when we had many other technologies which did so much better but failed for various other reasons.

    Again - this is just not true, at least in my experience. If my 800 mhz iBook with OS 10.4 and Safari can run Gmail as fast as Mail.app then I'm sold on the usability of quality engineered AJAX-enabled applications.

    --
    The Luddites were ahead of their time.
  5. except that by circletimessquare · · Score: 4, Informative

    no one cares about what you care about

    i'm being serious here: 99.9999% of web users don't really care if your screen scraper program is harder to write now

    you are speaking from an idealistic point of view that doesn't really drive the web

    the web is all about, and i mean all about as in the first issue and last issue under consideration, end user experience

    everything else is trivial

    i'm not in any way joking or trying to be flippant

    if web users go "cool, you can drag the google map around, that's so much easier to use than mapquest" then every single thing you just said goes right out the window

    end users rule with an iron fist for all development efforts, period, end of story

    never forget that

    realism trumps idealism

    --
    intellectual property law is philosophically incoherent. it is your moral duty to ignore it or sabotage it