Why Microsoft and Google are Cleaning Up With AJAX
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."
Now if we can just keep AJAX and ditch Javascript.
Man, are they ever hyping this stuff. This story doesn't seem to actually cover anything new, it just hypes AJAX more!
:-(
The truth is that the stuff we've seen in AJAX so far is nothing. I don't know about anyone else, but I've used it in regular webapps as nothing more than an interface enhancement. People don't even really notice the fact that the web pages work much smoother.
That being said, there's a massive untapped potential in this technology. I've got demos of Video Games in AJAX, as well as a full Desktop. I tried to get Google interested in the video games concept, but I'm afraid they ignored my communication.
Javascript + Nintendo DSi = DSiCade
Microsoft basically invented AJAX, yet they're the ones behind the curve.
Microsoft invented the XmlHttpRequest functionality, AND they've been using AJAX (before that's what it was called) in Outlook Web Access (OWA) for years. Nobody else in the company seemed to have caught on to it though.
If you need web hosting, you could do worse than here
Sounds familiar, could have sworn I read something about this here the other day.
Anyway. Let's not fill this page up with 'Dupe' complaints. Macromedia are probably gonna have to re-think things (in the new Adobe environment, of course) since they were convinced that Flash would be the vehicle of choice in developing what they call Rich Web Applications. They'll now have to sell it on the basis that you can get a hell of a lot of functionality out of very few lines of Flex code.
It's gonna be interesting.
Drill baby drill - on Mars
AJAX is so 2005, we should use new technologies.
Advanced features like drag 'n drop, dropdown menus and faster performance capabilities
A very nice offer. Really. Something fresh and new: DnD and Menus. 1984?
a significant leap
21 years back. Honestly I don't like it, AJAX is not good for the users, not good for the developpers. All of that could be replaced by Java or any similar tech. With much better results. Let's switch to the Web 3.0 directly.
Million Dollar Screenshot
I think that if AJAX picks up and starts to be used everywhere, we should standardize a system so that optionaly, a web browser can inform the server that it has the option to connect to it using an open port on that system. It would really help things if the browser didn't need to connect to the server every few minutes to check for new data. That way, instead of my browser connecting to Gmail's servers every 60 seconds to check for new mail, Gmail's servers can connect to my browser and tell me only when I have new email. This saves processing and bandwidth and increases usability.
This turns AJAX into more of an actual internet protocol, and I think it would really improve things.
What is it with this EVERYTHING on the Internet is a webpage. The browser is the only client these days outside IM and P2P warez trading for 95% of users. And even though Javascript was never intended for 'real' programming it is the only language all browsers implement so it is what everyone is forced to use. It wasn't supposed to be this way and it doesn't have to BE this way.
If nothing else, if we want to download clients and run them in the browser, having them talk to a backend server for the data, why not get a more appropriate language? Java would be perfect if Sun weren't a bunch of asshats, but just because it won't ever be truly Free or cross platform is no reason to reject other candidates. Tcl/Tk has had a fully sandboxed browser plugin for a decade and it is 100% Free Software. It runs on every known platform where IE or Mozilla runs and could be ported anywhere else needed. I'm sure it isn't the only one. Or do we continue shoehorning everything into html?
Democrat delenda est
AJAX is great. It means that web deployed applications are now almost as good as the regular applications we've been using for over 10 years! Just imagine: We can enhance Javascript to support more OO features and reflection and add JIT and it will become just like Java! Yaaay! Then we can add support for stronger typing and compiling to native code, and then it will be just like C! Yaay!
.NET natively support this. For other languages there are plenty of frameworks that will add that capability.
It is funny to watch technology reinvent itself in fast-forward.
I work for a company that did AJAX long before it was called AJAX. And now that it is the next hot thing they are moving away from it. Why? Because they already learned the lesson that everyone else is about to figure out: AJAX is a b*stard to code and maintain. It is easier to write a client-server application in a traditional language and web deploy it than to write this crazy JavaScript + XML + HTML + DHTML + CSS stuff.
Java and
Whatever happened to embedding python in firefox. That would be bitching: APAX
"Piter, too, is dead."
Remember when Java came out? Well the Wordperfect suite was rewritten in Java to be cross-platform blah blah blah. So much for Wordperfect.
Considering the huge rise in personal storage space and computing power in smaller and smaller packages, re-writing things like office suites so they run on the web (instead of in your own hand) is a retarded waste of time. The real benefit of AJAX will be some intelligent use of it for some new, exciting purpose that does not make sense on one's own laptop, pocketpc, etc. One of those would be to access databases too huge for local storage (hm, google anyone? archived mailing lists?) or things that change rapidly and are large (weather maps?) or things that need to be accessed rapidly from different locations by multiple people at different times using powerful equipment... you get the idea.
as for MS Office and Outlook... HA! Suites will be a commodity that come on USB keys as a value-add the way photo editing software comes with cameras and scanners and firewire cards, etc.
JavaScript is object-oriented. You only call it "odd" because it's not the usual C++/Java/whatever object orientation you are used to, it's prototype-based like Self, not class-based. That's no less of a "real" object-oriented language.
Don't blame JavaScript for the shortcomings of GMail, it's simple to dynamically load JavaScript on demand. There's a lot of really screwed up stuff about the way Google use Javascript, don't use them as examples of best practice. If Google are incapable of doing something, that means Google are incapable, not that the language is incapable.
Bogtha Bogtha Bogtha
JavaSript is not related in any way to Java. It was a cold day in November 1995 when Bill Joy, in contract negotiations between Sun and Netscape, told them "sure, go ahead and use the name JavaScript."
Sort of funny when you think about the current protection of the Java trademark, or whatever it is.
p.s. yes I was there
More like, "Google uses it, and Microsoft invented it".
Indeed. This story is absolutely unbelievable revisionist history and nonsense. I've written about my feelings of AJAX (in fact I was honored to see that an AC already referenced it in this thread), and this article is exactly what pisses me off about the new-to-web-apps "AJAX" converts. This messaging expert is yet another dumb-ass trying to get in on the Web 2.0 action to earn some VC funding. She even used the word "paradigm" to really put up the flags.
It really stinks when you want to play with these technologies, but as a federal contractor, not something we can do.
I don't think there are too many screen readers our there that can handle AJAX quite yet.
Hmm.. screen reader built onto Firefox? Notices when stuff changes. I could build that. Sweet.
Not really.
We have this mechanism with active FTP.
On this page http://slacksite.com/other/ftp.html
there is pretty good description how it works.
This is not high risk, because the port need to be opened for a short time.
And after the connection is created, there is no need to listen more on this port, just keep the connection.
You will accept connection only from the host in the url, and will not accept connections from other hosts.
It's almost platform independent. The main problem which primarily afflicts Microsoft's use of AJAX, such as in Outlook Web, is the way that the "A" in AJAX is "started".
Basically to initiate an HTTP asynchronous request, the Javascript code must create a special object which encapsulates the request and communication. Althought the interface and use of this object is for the most part standard, the way in which it is initially created is not.
So if you want a platform independent AJAX app, you pretty much need a bit of code which does things the Microsoft way when the standard ways don't work. Like:
Now, Microsoft-written applications which use AJAX only try the MS ActiveX methods, and not the standard XMLHttpRequest() function. Thus, although most of the application could have worked in any browser, this simple omission by Microsoft insures it only works under IE (and locks you into their technology).
It should also be noted that AJAX is a methodology and not a strictly defined API. For instance most AJAX apps rely heavily on the DOM API, which Microsoft mostly but not entirely adheres to. So there's lots of things that can cause platform independence problems if not coded carefully.
For those of you complaining about how JS suffers from various browsers inconsistencies and bugs, and how it should have a [hard-to-build] framework that handles all this, take a look at the following:
t /user/Window_2.html
/. the other day, and was quite impressed -- even if it still has a ways to go before it hits prime time).
http://qooxdoo.oss.schlund.de/demo/dev/public/tes
(I discovered this through
I'm just finishing a project where QooxDoo (when its a bit more finished) would have been the cat's ass.
What! The mighty Ajax is all of the following:
1. A couple of guys from "The Iliad".
2. The name of a bunch of cars from the early part of the 20th century.
3. A major Dutch soccer team.
4. A toilet and bath cleaner.
5. A town in Ontario.
6. A character from the movie "Flash Gordon".
7. A "web technology" whose component parts have existed for ages, but marketing people believe makes them sound smart and "cutting edge".
8. Many other things.
It is NOT, and has NEVER BEEN, a mere "window cleaner"! Good god, man!
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.
Secondly, you, as the AJAX programmer, have to re-implement all the useful things the browser does to tell you what's going on. An example: a few weeks ago Google launched a javascript RSS reader. On the first day their server system was completely overwhelmed with requests. Because of the AJAX implementation, the user couldn't tell what the hell was going on. The elements of the UI would click and move around and animate and do all sorts of things, but the data wasn't coming in from the server, so it was useless. And because of the architecture the browser was not giving messages like "server could not be contacted" or what-have-you. Someone needs to come up with a way to inform the user that something dreadful is happening behind the curtain.
With the two above improvements, AJAX might be of some use. As it currently stands, AJAX is just an Even Bigger Hack.
>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.
Of course not. It delivers a desktop-LIKE feel to certain web applications. However, that is NOT the only point of it. Other advantages include:
#1 Immediate deployment - You can distribute your web-served application nearly instantly. Tell me what corporation WOULDN'T love the idea of having their 1000 employees have near instant access to an Office-like application and not have their IT department lift a pinky finger?
#2 Portability - I can use the same application at any location and it'll have the same feel. If website also offers storage, I can also work on the same document/e-mail/project. Don't tell me that you wouldn't find a web version of MS Word that you could access from any internet connected computer, INCREDIBLY useful.
#3 Everyone would be using the most up-to-date versions. I'm sick of having to download updates to my dozens of programs. Would LOVE it if everytime I used an app, I didn't have to even think about it.
#4 Takes up very little space on your harddrive, and doesn't mess with your OS. Yes, storage is cheap, but raise your hand if you haven't had to ever re-install Windows (or simply chose to do so) because you've installed and uninstalled so many freaking apps on your computer, your registry is FUBAR, and your OS feels like it's running on a 386? How about because your menus read like an encyclopedia index of apps and are just cluttered beyond all recognition? Yeah, thought so. Plus, I just hate having a 10 gig application, that I use like once a month, sitting on my machine. Makes defragmenting, virus scans, and ad-ware scanning a royal pain too.
So yes, you are correct, in that it can't quite match the snappiness of a local app. Not yet anyhow but that's what's great about technology, eh? What's not possible today, IS possible tomorrow. But aside from that, the advantages I listed above FAR outweigh the disadvantage of not having a "true" local app "feel". Whatever that means anyhow.
"The only normal people are the ones you don't know very well."
Actually, my biggest problem with Javascript was (is?) trying to understand all the little (or sometimes not-so-little) implementation differences, and write cross-browser script that didn't turn into zillions of checks:
That becomes a maintenance nightmare. Every few months a new browser version becomes available and must be tested and it's niggling quirks discovered and handled. This is not an insignificant task. Personally, I would rather be a content creator, not a browser beta tester for MS and Mozilla.The Russians have won. They have made the world a cesspool of distrust, greed, fear and hate.