Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Java Programming IT

Why Microsoft and Google are Cleaning Up With AJAX 443

OSS_ilation writes "Google uses it, and Microsoft is pursuing it, so there's a lot of hype and hubbub surrounding AJAX (Asynchronous JavaScript and XML). AJAX brings together some hot properties, JavaScript, HTML/DHTML and HTML, according to Julie Hanna Farris, founder of Scalix, a Linux-based, e-mail systems vendor. Scalix is using AJAX in Scalix Web Access (SWA), a Web-delivered, e-mail application. AJAX enables advanced features like drag 'n drop, dropdown menus and faster performance capabilities, which are now making their way into Web applications, she said. These kinds of capabilities represent a significant leap in the advancement of Web apps."
This discussion has been archived. No new comments can be posted.

Why Microsoft and Google are Cleaning Up With AJAX

Comments Filter:
  • by Anonymous Coward on Thursday November 10, 2005 @05:44PM (#14002055)
    Microsoft was using Ajax before anyone ever even heard of google. Outlook web interface anyone? Cmon, at least be semi-accurate.
  • Re:What is ? (Score:3, Informative)

    by RingDev ( 879105 ) on Thursday November 10, 2005 @05:48PM (#14002106) Homepage Journal
    The .Net alternative IS AJAX. VS.Net 2k5 has AJAX components built in. It takes a mater of seconds to get AJAX running in 2k5. There are also plug ins available for VS 2k2/2k3 to run AJAX.

    -Rick
  • Re:What is ? (Score:3, Informative)

    by imidan ( 559239 ) on Thursday November 10, 2005 @05:49PM (#14002115)
    The .NET alternative, which comes as a part of .NET 2.0/Visual Studio 2005, is Atlas.

    Here's an overview. [asp.net]
  • Re:What my dog hears (Score:3, Informative)

    by hillg3 ( 656728 ) on Thursday November 10, 2005 @05:51PM (#14002142)
    Yes! I found it! What dogs hear [codinghorror.com]
  • Be Careful (Score:3, Informative)

    by dmh20002 ( 637819 ) on Thursday November 10, 2005 @06:01PM (#14002252)
    If you are typing on a web page that uses XMLHTTPRequest, then you should treat it as if you were running a live program remotely. I.E. the web page could forward information about everything you type, how you move your mouse, etc, without an explicit 'submit'. Example : it if were an email app, and you typed 'my boss is a dick and my SSN is 555-55-5555' in an edit control, and then thought better of it and erased what you typed and killed the browser window without submitting, the contents could already have been captured and forwarded to the host with XMLHTTPRequest and you never knew it. Looks like a good cross site scripting opportunity.

    Of course, you usually don't know if a page is using XMLHTTPRequest in a hidden frame unless you look really hard, so I guess the bottom line is never type anything on a web page you don't want the world to see. On the other hand, AFAIK (which doesn't mean much) this hasn't shown up in practice, so maybe it isn't that big a deal.
  • Re:AAX??? (Score:4, Informative)

    by wealthychef ( 584778 ) on Thursday November 10, 2005 @06:01PM (#14002255)
    I think the grandparent was saying that it would be nice to replace the J in AJAX with something else. But I am not sure what they meant and should let them speak for themselves. :-)
  • by dalmaer ( 725759 ) on Thursday November 10, 2005 @06:10PM (#14002347)
    Hi, My name is Dion Almaer, and I run a site called ajaxian.com [ajaxian.com] which focuses on news, resources, and all things Ajax. We also have a podcast called Audible Ajax [ajaxian.com]. Let us know if there is anything that you would like to see covered, and if there is anything cool in the Ajax world that we have missed. Cheers, Dion
  • Re:Funny thing is... (Score:4, Informative)

    by killjoe ( 766577 ) on Thursday November 10, 2005 @06:12PM (#14002367)
    "Microsoft invented the XmlHttpRequest functionality,"

    Microsoft invented XMLHttpRequest because before that people were using tiny little java applets to accomplish the same thing. In fact the original version of remote scripting in IE also used a java applet. When MS decided that java was the enemy they figured a way to do it without java.

    I for one see no need for AJAX, it's better to just write java applications or even applets (or thinlets).
  • by Sundroid ( 777083 ) on Thursday November 10, 2005 @06:13PM (#14002376) Homepage
    Here is a fairly long list of websites that use AJAX -- http://en.wikipedia.org/wiki/List_of_websites_usin g_Ajax [wikipedia.org]
  • Re:Incoming data (Score:5, Informative)

    by KiloByte ( 825081 ) on Thursday November 10, 2005 @06:14PM (#14002397)
    1. The good ancient way.

    Try this:
    #!/usr/bin/perl
    print "Content-type: text/plain\n\n";
    $|=1;
    (print '.'),sleep 1 while 1;

    2. With XMLHttpRequest:

    var req = new XMLHttpRequest();
    req.multipart=1; ....

    and the server-side part uses content-type: multipart/x-mixed-replace
  • by dalmaer ( 725759 ) on Thursday November 10, 2005 @06:19PM (#14002461)
    Moby, Ajax is being hyped a lot at the moment, that is very true. It is also true that building a very rich Ajax application on top of XHR isn't easy. However, one of the great things coming out of the attention, is that browsers are listening and adding support for apis such as "offline storage" which we have been wanting forever. Also, a lot of quality toolkits are out there now (Dojo, Zimbra, Prototype, ...) and they are doing the hard work of abstracting out the evil browser differences. Unfortunely, a recent poll on ajaxian.com [ajaxian.com] showed that most people are not using these frameworks. What you get with Ajax is reach and open standards. That is why I am excited about its potential, even though we are seeing some abuse, the hype curve is nuts. Cheers, Dion
  • Accessibility (Score:5, Informative)

    by leighklotz ( 192300 ) on Thursday November 10, 2005 @06:22PM (#14002510) Homepage
    AJAX, being a random collection of JavaScript hacks, doesn't offer any accessibility.

    So you can't use it in software that might be sold to, for example US Government customers -- no national laboratories, no NASA, etc.

    UNLESS -- you write your own accessibility aids and write your own UI framework that compiles into both an AJAX version and a web accessible version.
    That's a tall order. However, there is help.

    You can write your web pages in HTML with XForms and let XForms handle the dynamic page aspects, and then offer up the HTML+XForms as the accessible version. (See the DHTML Accessibility Roadmap [w3.org].)

    Everything that the AJAX cloud of applications does with the XMLHTTP object and updating the DOM on the fly to display choices can be done with XForms.

    Then, you can use one of these mechanisms to convert the server-side XHTML+XForms file into AJAX:
    • FormFaces [formfaces.com] A pure AJAX library that runs in today's browsers. It's stunning to see how simply this works.
    • Chiba [sourceforge.net] A server-side engine in Java that integrates with TomCat or other Apache web server technologies to produce HTML that works in today's browsers. Plus, the plain-old-HTML output of Chiba is accessible right now, in addition to the XHTML+XForms file itself. (Caveat: Full AJAX implementation is in development, according to the mailing list.)
    • Orbeon Ops [orbeon.com], like Chiba, Orbeon converts to HTML for today's browsers in its Java back end, but rather than integrating into your TomCat or Coccoon framework, it comes with its own framework that helps you separate presentation from content and write your applications.


    If you want to serve up the XHTML+XForms directly, and not rely on any AJAX technologies, try these:
    • Mozilla XForms [mozilla.org] for Mozilla and FireFox, an XPI that's available for recent betas and nightlies, this one-click install adds native XForms support to these browsers. Still in Beta, but with plenty of developers, it should be a full implementation.
    • FormsPlayer for Windows [formsplayer.com] provides full support for XForms in Internet Explorer via a plug-in. Plug-ins are not everyone's cup of tea, but then neither is Mozilla ;-). You can get the AJAX benefits of dynamic page updating and yet still retain accessibility with any of the server-side or JavaScript engines above, but if your target deployment is Internet Explorer, you can gain tremendous access to advanced features inside IE with this plug-in. (Plus it has some neat Konfabulator-like tools such as SideWinder.)


    So, try them out, and see how much easier it is to write accessible code and properly separate your data and presentation layers when you use XHTML, CSS, and XForms. Then, choose a middleware solution or a browser-based solution and go forward knowing that you can meet architectural requirements without getting bogged down in JavaScript toolkits.
  • Re:AAX??? (Score:3, Informative)

    by pthisis ( 27352 ) on Thursday November 10, 2005 @06:34PM (#14002644) Homepage Journal
    Whatever happened to embedding python in firefox. That would be bitching: APAX

    Existing APAX solutions use py2js so you write client code in python which is translated to javascript automagically.

    See, e.g., Crackajax (or use plain py2js if you don't want a big framework).

    what if I could write an Ajax application in Python? I set out to work, and came up with CrackAJAX, which uses the jsolait JavaScript library...It uses inspect.getsource(), mucks with the indentation a bit to make it parsable, and then parses it into ASTs. Then I plugged it into a modified version of a Python-to-JScript.NET compiler I wrote to do the translation.


    http://www.aminus.org/blogs/index.php/phunt/2005/1 0/06/subway_s_new_ajax_framework [aminus.org]

    I think TurboGears has something similar.

  • Re:Ditch Javascript (Score:3, Informative)

    by misleb ( 129952 ) on Thursday November 10, 2005 @07:03PM (#14002919)
    Javascript is fine. Not perfect, but it is usable. It is HTML that blows for web apps. There are just so many basic things you can't do in HTML such as listboxes and treelists. And the widgets HTML does have are really nmeant for simple forms, not complex user interfaces. Sure, you can find ugly and slow Javascript implementations but what we need is a UI language such as XUL which can describe a fully functional application UI. Right now AJAX is OK for adding a little spice to traditional web applications, but it won't be a revolution until we have something besides HTML to describe the UI.

    Javascript+XUL is very powerful. Consider that the entire Firefox front end is written in XUL and Javascript. You can use AJAX with XUL, BTW.

    -matthew
  • Re:real reason why (Score:5, Informative)

    by misleb ( 129952 ) on Thursday November 10, 2005 @07:16PM (#14003048)
    It is bullshit. AJAX does NOT give one the ability to deliver desktop quality applications through the web. Not even close. Sorry. At best, AJAX spices up traditional web applications. But it is still using HTML/CSS for the UI. The HTML/CSS document model simply doesn't work well for desktop quality applications.

    Saying that AJAX will allow one to deliver desktop quality applications is like saying central heating will turn a mobile home into a mansion.

    -matthew
  • Re:Accessibility (Score:2, Informative)

    by phusikos ( 784802 ) on Thursday November 10, 2005 @08:01PM (#14003453)
    Properly written AJAX isn't any less accessible than a plain old HTML form. Just make sure your AJAX events are triggered by actions that would normally result in a regular HTTP request (like clicking an anchor or submit button on a form). This way, there's nothing lost if Javascript is off. Everything else can follow the 508 [section508.gov] guidelines just as strictly as a well-designed static page. So go ahead and pitch that AJAX app to NASA.
  • Re:Accessibility (Score:5, Informative)

    by Bogtha ( 906264 ) on Thursday November 10, 2005 @08:07PM (#14003503)

    AJAX, being a random collection of JavaScript hacks, doesn't offer any accessibility.

    So you can't use it in software that might be sold to, for example US Government customers -- no national laboratories, no NASA, etc.

    UNLESS -- you write your own accessibility aids and write your own UI framework that compiles into both an AJAX version and a web accessible version.

    This irritates me. This is not true. And yet moderators without a clue have pushed it up to +5, Informative. And any newbie web developers who read this are going to think that they have to choose between AJAX and accessibility. Some of them are going to choose AJAX and not bother with accessibility. If your post had been down at -1, Wrong, they might not get that impression, and would go on to write accessible AJAX web applications.

    You don't have to choose. You don't have to write "UI frameworks" that you have to "compile". That's nonsense. What you do is you write the non-AJAX version, and then you add the AJAX as an optional extra. When people have Javascript turned off, they get the basic version seamlessly. Perfectly accessible, none of the complicated nonsense you claim is necessary.

    Please stop propogating this myth. If you want to promote your favourite technologies, then by all means do so, but don't lie about the alternatives to make them look bad.

  • Re:real reason why (Score:3, Informative)

    by misleb ( 129952 ) on Thursday November 10, 2005 @08:37PM (#14003734)
    I agree. Web browsers (and AJAX) lack two crucial features needed for GUI development. The most important by far is a packing system. There is no way to tell the browser you want one element to be as compact as possible, and you want the element next to it to be as large as possible. This stuff has been in GUI APIs for decades, because it's a requirement. If you could get at the APIs that Mozilla uses to draw its GUI, and use those in the content area, that would be a start. But right now you just have to guess at element sizes.

    XUL [xulplanet.com] provides both. AND you can use it with AJAX. But, alas, it only works with Mozilla based browers.

    -matthew

  • Re:Funny thing is... (Score:2, Informative)

    by aztracker1 ( 702135 ) on Thursday November 10, 2005 @08:38PM (#14003737) Homepage
    I was doing it in frames long before as well, have also used java, and flash, in fact MS's remote scripting (introduced with ie4, & asp 3 iirc) uses a java applet for its' communications.. there are similar frameworks for PHP etc.

    I'm willing to give MS a big credit in this, however, since they did to XmlHttpRequest first, as well as their remote scripting, which makes easier tie ins on the server-side... their Atlas framework falls a little short of Ajax.Net's interfaces though.
  • Bullshit (Score:0, Informative)

    by Anonymous Coward on Thursday November 10, 2005 @08:48PM (#14003813)
    Turn off JavaScript and try and load Google Maps.

    "Your web browser is not fully supported by Google"

    There's no "basic version seamlessly" there.
  • Re:Funny thing is... (Score:2, Informative)

    by Bulmakau ( 918237 ) on Friday November 11, 2005 @11:22AM (#14008087)
    You are forgetting that MS invented cross frame coding.
    There should be no denying, MS lead the development of HTML into DHTML into what is basically refered to AJAX today. It might be that W3C defined certain things, but the "violation" of those definitions by MS (which many times W3C adopted) is the reason AJAX exists today.
    Trace back the features you like today about AJAX and they all come down to MS features extending what was at the time the standard of web.

You knew the job was dangerous when you took it, Fred. -- Superchicken

Working...