Microsoft to Release AJAX Framework 292
An anonymous reader writes "News.com is announcing that Microsoft has announced plans to release a JavaScript client framework library for use with ASP.NET 2.0 that makes AJAX style browser clients easier to code. Developers who attend Microsoft's PDC conference in September have been promised an early release of the code."
And let me guess...... (Score:3, Insightful)
Re:And let me guess...... (Score:3, Funny)
Re:And let me guess...... (Score:4, Funny)
"Microsoft has announced plans to release a javascript client framework library for use with ASP.NET 2.0 that makes AJAX style browser clients easier to code"? Alarm bells are ringing.
Re:And let me guess...... (Score:2)
Re:And let me guess...... (Score:3, Informative)
ASP.NET can downgrade to both scriptless and cookieless operations, which was one of the major selling points of it. In fact out of the box it presumes too little out of most clients, though thankfully you can update the browsercaps quite easily.
Re:And let me guess...... (Score:5, Funny)
A growing number of proponents argue that applications created with AJAX perform better than today's Web browser-based applications.
Because as we all know, AJAX applications don't run in the browser.
"People who do (AJAX development) are rocket scientists," Fitzgerald said.
While I do feel that the intellect of rocket scientists is greatly overrated by the general public, I don't think he was commenting as to the simplicity of AJAX here. Which begs the question, if you think AJAX is complicated, Mr. Fitzgerald, what exactly are you doing in the IT profession? AJAX is about as complicated as a ruler. Perhaps you should stick to playing with brightly colored bits of string and leave the thinking jobs to the "rocket scientists".
Re:And let me guess...... (Score:3, Informative)
90% of the programmers in the MS area are morons. They are not interested in the higher aspects of computer science, nor do they give a shit about compability or efficient code. They care about one thing.
Does it do what I want?
This might sound fine and good to a lot of people, unfortunatly it isn't very so. We all remember the MESS frontpage created on the internet, zillions of so called webmasters broke the gates of pearls we had between THEM and US, the programmers. Now they're back, and t
Re:And let me guess...... (Score:4, Insightful)
I agree totally. Most "programmers" forget that you also need to take care of the flip-side: Does it not do what I don't want it to do?
Re:And let me guess...... (Score:3, Interesting)
And dont give me the ' they were declared a monopoly ' garbage. They tossed that ruling back in the face of the (US)government and went on about their business like nothing happened..
Re:And let me guess...... (Score:2)
Re:And let me guess...... (Score:2)
See this: http://weblogs.asp.net/scottgu/archive/2005/06/28
and, in particular, this comment by the blog author:
"Atlas will work with all modern browsers. It will also work on non-Windows platforms."
Re:And let me guess...... (Score:5, Insightful)
No, it's like making gasoline that can be used by more than one brand of car. Or paving a road that is compatible with more than one brand of tire.
When products from different vendors need to interoperate, as you find in a networked environment, standards are good.
Re:And let me guess...... (Score:2)
Micheline, Good Year, Pirelli, etc all make a bunch of standard tire sizes and the auto manufacturers all make a bunch of standard wheel sizes. They fit together because they agreed on the standard and the customer wins by being able to choose nearly any tire for their car.
With Microsoft, they build the car and the tire and if you want their tire on your non-MS car or another tire on your MS car, you can't do it. The customer loses.
Re:And let me guess...... (Score:3, Interesting)
We all missed having to write 3 times every page we coded, but thanks to the Happy Slashdot Thinker and Microsoft these fine days of craft and worksmanship will soon be back...
Oh, BTW, TCP/IP is mandatory for internet, the Web, on the other hand, is all about HTTP content that's supposed to work the same in every user agent avaible, hence needs interoperability. And it runs on top of internet. Without cross-
Re:And let me guess...... (Score:5, Insightful)
MS doesn't need to "support" other browsers. All MS needs to do is follow standards! Make their AJAX JavaScript standards compliant and no one could complain. If their AJAX is standards compliant JavaScript and it doesn't work with WebBrowser X, then it is the fault of WebBrowser X and not Microsoft's.
Re:And let me guess...... (Score:5, Informative)
By the way, there is no standard yet. XmlHttpRequest is a non-standard technology at the moment.
Mod Parent Up! (Score:2)
What's sort of interesting is that Microsoft first introduced this as one of those
There is a standard... (Score:2)
So, in this case, the first implementation of the idea, used for the purpose that others have adopted later is Microsoft's. Usually, that's considered enough to claim priority in defining a standard. That other browsers aren't conformant to the standard is hardly Microsoft's fault.
Re:There is a standard... (Score:2)
By the way, MS invented this at the same time they were
Re:And let me guess...... (Score:2)
Yes I have, thanks. The XMLHttpRequest object is a built-in object in Mozilla/Gecko that was modelled on Microsoft's XMLHTTP ActiveX object.
Which is the route I bet MS will take.
While it is not an "official" standard, XmlHttpReque
Re:And let me guess...... (Score:2)
See: http://www.xml.com/pub/a/2005/02/09/xml-http-requ
XMLHttpRequest is not part of any standard, and their is no real standards defined method of doing the equivalent.
XMLHttpRequest is not "standard" (Score:3, Informative)
Do you realize the XMLHttpRequest Object (the core javascript object in which AJAX would not exist without) is not a W3C standard? It was first implemented in IE5 as an ActiveX Object (new ActiveXObject("Microsoft.XMLHTTP")) and latered implemented by Mozilla, Firefox, Safari, etc.
Of course, you won't find anyone giving MS credit for innovation here, but you'll get modded 5 if you're the first to mentions "standards!"
Re:And let me guess...... (Score:2)
Nobody says they *need* to be standards-compliant, just that they should be.
Microsoft should care about their customers, but instead they hurt their customers when they try to force everyone to use only their prodcuts. In this case they will hurt every one of their customers who uses a non-MS web browser.
Re:And let me guess...... (Score:4, Funny)
It's more like Ford making cars that can only drive on special roads, roads that no other car company can make cars that drive on. Then Ford patents certain aspects of those roads. After that, Ford uses incentives to convince various others that they should make those roads the only way to drive to their property, eventually convincing highly desirable property owners to switch to these roads. Then, seeing that these roads are the only way to do business with some clients, corporations are forced to start buying Ford cars for their fleets. Soon, there becomes no viable economic reason to buy any other cars for their fleet but Fords.
I could go further, but this analogy thing is starting to annoy even me.
Re:And let me guess...... (Score:2)
Re:And let me guess...... (Score:2)
You're really not on your waters here. A coding framework shall not be compatible or incompatible with any browser. It shall provide libraries to make coding easier. But what MS usual behavior looks like, they make it APS.NET/.NET/etc.-dependent, thus making their new stuff only good to create code which will most probably be only IE compatible (it always makes me want to puke when I see "IE" and "compatible" next to each other).
AJAX is
client side callbacks? (Score:3, Interesting)
AJAX on Rails anyone? (Score:2)
Interesting (Score:3, Informative)
Re:Interesting (Score:5, Informative)
Re:Interesting (Score:2, Interesting)
Just wondering what the future of Web Pages That Suck will be like in ten more years with all these "wonderful" systems and frameworks being promulgated all willy nilly without regard to the central focus being conveyan
Re:Interesting (Score:5, Interesting)
First, reduced bandwidth. Not for you, though. Nobody (aside from you) cares how much bandwidth you have to use to view a single web page. People care how much bandwidth it takes to serve their own page thousands of times. Minimizing this figure saves money.
Second, server load. Again, thousands (or in some cases hundreds of thousands) of hits tends to put a strain on systems like this. If we offload visual transformations to the client, we save time on our server and our web pages are sent out faster.
Both of these result in reduced costs for website owners. It's what's going to make sure the internet stays as free as it can be.
Kumbaya.
You know this is how it'll start (Score:2, Interesting)
I've got money that says their "framework" starts like this:
var req = new ActiveXObject("Microsoft.XMLHTTP");
Of course there's any number MS only javascript methods that'll probably litter this "framework" as well.
Re:You know this is how it'll start (Score:3, Informative)
Re:You know this is how it'll start (Score:5, Informative)
You can read more on his weblog. [asp.net]P
Re:You know this is how it'll start (Score:2)
ActiveAjaX (Score:2, Interesting)
ActiveX by itself is bad. ActiveX with Ajax would be worse because it would enable spyware writers become more agile.
Why is Microsoft helping spyware writers? Surely they would have known this could be a bad combo... right??
Re:You know this is how it'll start (Score:5, Informative)
Or, you know, you could just mindlessly bash MS, it's your choice.
Re:You know this is how it'll start (Score:5, Informative)
While I agree that Microsoft's way leaves much to be desired (primarily because AJAX on IE requires that you leave your browser open to ActiveX insercurities), I'm afraid there isn't really a "correct" way to do it. Your way (testing for the native XMLHttpRequest object, and then falling back to the ActiveX object if necessary) is certainly the best way, however.
IIRC, Mozilla's XMLHttpRequest object was created to mimic the functionality of Microsoft's ActiveX version, and then Safari and Opera (to a certain extent) followed suit. However, the XMLHttpRequest has never been part of ECMAScript [ecma-international.org] (the standard that Javascript is based on) nor the W3C DOM [w3.org]. It has always been an "extension" that Microsoft has foisted upon the world, much like the <marquee> tags and layers we love to hate.
As such, it is inconsistently supported -- particularly in Opera and Safari 1.3/2.0 [infocraft.com]. There are also minor differences (e.g. the number of arguments that the send method accepts) that arise due to the lack of a standard specification.
Fortunately, because of its immense utility in creating modern web-apps, it has become a de-facto standard and thus rather reliable. I would love to eventually see browsers support a standards-based version of AJAX (something like the W3C Level 3 DOM Load and Save [w3.org] specification), but until then, there is no truly "correct" way to do it.
Re:You know this is how it'll start (Score:2)
Besides if I don't like how it implements the client side of it, I can just make an inherited class and override what I want. Again something else you'd know if you'd ever worked with this "framework".
From the article and elsewhere (Score:2)
And Microsoft also plans to make sure that ASP.NET 2.0 works well with Safari, Opera and Firefox. The last thing they want is for their web apps to generate HTML that breaks 10-15% of the market out there because that's enough no
Re:You know this is how it'll start (Score:5, Interesting)
function ActiveXObject(name) {
if (name == "Microsoft.XMLHTTP") {
if (window.XMLHttpRequest) {
return new window.XMLHttpRequest();
}
}
return undefined;
}
What about Sarissa? (Score:2)
I'm sure AJAX development can be simplified with sarissa. It won't work with other browsers, of course since not all of them support XSLT.
They should call it... (Score:4, Funny)
Thank you, I'll be here all week. Try the veal...
Now that's not fair (Score:3, Funny)
They should call it HIJAX...
Since it's AJAX [ajax.com] the code should be pretty clean.
That would be funny (Score:3, Informative)
Microsoft death watch (Score:2, Insightful)
Bow, Microsoft, bow before your Ruby masters!
Re:Microsoft death watch (Score:2)
I'm sorry.. (Score:2)
Ohhh god... it hurts... soo bad...
hahahhahahahahaha...
Ruby on Rails has like what... 5 people using it? Okay lets be generous.. 100...
Juggernaut?? Please... the project will probably be abandoned in less than a year like all the other half-assed frameworks. (Though really, I'm sure that's what all the PHP haters said too.)
PHP and Java is who they're really fighting against. In the web dev. world PHP wins over ASP.NET in almost every situation. For all the other situ
5 to 100? (Score:2)
You realize that the beta of the new Pragmatic Programmer Rails book has sold more copies than that on iteration 1? The demand is absurd.
I'm a Rails novice. My abilities with Rails are only marginal compared to the gurus of the framework. And I am turning down consulting jobs. I work on Rails at work now, both professionally (see where I work in my description and be shocked) and in my current consu
Re:I'm sorry.. (Score:2)
mod parent funny (Score:2)
Is it a bad thing (Score:2, Funny)
Cross-platform (Score:5, Insightful)
Pfft. AJAX is easy. It's cross-platform AJAX that's brutally hard. You expect us to trust Microsoft to create a framework that will allow perfect portability between Opera, Safari, Mozilla and MSIE? Uh huh.
Re:Cross-platform (Score:2)
if (window.XMLHttpRequest)
{
objHttpRequest = new XMLHttpRequest();
if(bAsync)objHttpRequest.onreadystatechange = ProcessCallBack;
objHttpRequest.open("GET", url, bAsync);
objHttpRequest.send(null);
}
else if (window.ActiveXObject)
{
objHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");
if (objHttpRequest)
{
if(bAsync)objHttpRe
Re:Cross-platform (Score:2)
Personally, I don't worry about pixel-perfection on IE5 (its CSS support is far too pants these days!), but even so, websites still need to look reasonable and be functional.
I agree that "AJAX" type stuff does work much better and consistently on the _other_ browsers, but even here, they tend to need to be relative
Re:Cross-platform (Score:2)
Do you mean cross-browser?
When your platform is a web browser, they have the same meaning.
Totally misses the point of AJAX (Score:2)
Re: (Score:2)
I guess now we can have remoting with Ajax... (Score:2)
Truthfully, if macromedia would loosen their purse strings from Flash a bit more - we'd see more stuff like OpenLazlo come up.
Btw, I plan to work on a wsdl2javascript wrapper over XmlHttpRequest. I think we should be able to make SOAP calls from javascript directly - that would solve all these stupid XSD schemas and SDKs for eac
Re:I guess now we can have remoting with Ajax... (Score:2)
I wrote a mozilla based application about 3 years ago that used simple javascript SOAP calls.
As far as I could tell at the time, this wasn't supported by IE. I don't know if it is yet or not.
Here [oreillynet.com] is an O'reilly article from 2002 talking about how to do it.
Still behind the curve (Score:2)
I've tried working with some others with varried success.
And the open-source alternative is: (Score:3, Funny)
Do they have a template? (Score:5, Funny)
Perhaps Slashcode could be enhanced to provide the functionality. That would make this kind of story much easier to put up.
Hint: the input just needs to be standards-compliant tool. The program should already know which Microsoft product handles the cool-sounding things and be able to choose the upcoming event for the given market segment. The time period should be long enough to allow the code to actually be written, or long enough for the announcement to be forgotten.
Planned for ASP.NET 2.0 for over a year... (Score:5, Insightful)
People act like AJAX is some magical new technology, when in reality, it's been used for years. Microsoft is just one of the companies who offered a "framework" to make it easier to develop. If they end up integrating it into their controls, it will be huge.
And for reference, I believe their demo worked in Firefox as well.
If anything, the AJAX popularity will just give them a little kick in the ass to move more quickly.
Microsoft name lends business credibility (Score:2)
Before we start bashing Microsoft... (Score:5, Informative)
Ok, resume bashing.
Re:Before we start bashing Microsoft... (Score:2)
None of the rest of it is really rocket science. It's just Javascript and XML on the client, and whatever-the-hell-you-want and XML on the server.
Huh? (Score:2)
Well, while JavaScript surely needs some further development, it's actually not that hard. That what made my JavaScripts usually hard to maintain and in the end a pretty ugly piece of code is working around deficiencies of the IE...
Didn't see this link yet (Score:4, Informative)
pushing the AJAX term (Score:2)
Spaghetti code is good? (Score:2)
Only at Microsoft would that statement be used to describe something good. Everywhere else, spaghetti code is a reason to yell at someone.
why a framework? (Score:2)
I wrote a quick demo page with less than a screenfull of javascript and that included browser detection, a reusable main function and it's callback, plus a function specific to my example.
Ok mod me down because I didn't read the article (yet) but why is a "framework" necessary.
xmlhttprequest frameworks... (Score:4, Informative)
Sarissa - http://sarissa.sourceforge.net/doc/ [sourceforge.net]
Prototype - http://prototype.conio.net/ [conio.net]
Dojo - http://dojotoolkit.org/ [dojotoolkit.org]
SAJAX - http://absinth.modernmethod.com/sajax/ [modernmethod.com]
DWR - http://www.getahead.ltd.uk/dwr/ [getahead.ltd.uk]
JSON-RPC-Java - http://oss.metaparadigm.com/jsonrpc/ [metaparadigm.com]
I have to laugh (Score:4, Insightful)
When I first learned about XmlHttpRequest in the IE5 days, I thought it was going to revolutionize the web. All the problems of session state maintenance would disappear and web pages would become little client-server apps. MS had this capability first with the ActiveX control. They could have hyped this capability and taken the lead with it back in 1999. ASP.Net would have been another great opportunity to showcase this feature and create standards. Instead the ASP.Net philosophy seemed to be to make as many trips to the server as possible. For a while MS virtually abandoned the idea of out-of-band requests. So now, years after introducing this feature, somebody at Microsoft finally realizes what they had going and decides to jump on the bandwagon. Good job guys, but a little late.
Re:I have to laugh (Score:2)
Since the javascript is a pain, we end up (overusing) server components. This means that we need multiple web se
Re:I have to laugh (Score:2)
AJAX is just a simplified way of doing it, just like every programmer in the world creates their own little libraries of routines for handling db connections and the like. AJAX doesn't do anything new, it just repackages it for those who never heard of it.
AJAX is merely an acronym that descibes an abstract idea (that, as you say, has been around for years) it doesn't repackage anything, and it doesn't simplify anything. every pro
I've really got to question the name "Ajax" (Score:2)
Sadly, most people will think "what you cut dope with"...
Re:I've really got to question the name "Ajax" (Score:2)
Why not a new application container specification? (Score:2)
Man this windows command prompt gets tedious (Score:2)
Re:something old, something MS, (Score:3, Insightful)
* Microsoft Office? no... OpenOffice.org
* Outlook? no... Thunderbird/Sunbird
* Windows? no... WINE
*
Anyhoo, I understand your point about compatibility but Microsoft's goal isn't to be compatible, rather to ensure their own profit.
Re:something old, something MS, (Score:2)
XMLHTTP? no... AJAX
Lets not for get "AJAX" is quite old (at least around since 1998) and originally done by MS. The jack-asses at Adaptive Path were using it (XMLHTTP) and wanted some new sexy name to use as a marketing gimik for it and so "AJAX" was born
This is not new stuff! Its a bunch of old stuff used together. It used to be refered to as XMLHTTP programming, but now its "HOT" again 'cause its got a sexy new name. This marketing crap makes my head hurt!!!! Lets not forget
Re:something old, something MS, (Score:2)
And they both suck
Re:SLOW SLOW SLOW... (Score:2)
You don't write code to go over each character of the XML! Use the builtin stuff.
Re:SLOW SLOW SLOW... (Score:2)
Yes and no. I usually let the browser do the parsing in an IFrame, then I just walk the DOM. It's much easier than taking a string of XML and trying to break it down like a good parser should. It's far too tempting to cheat like hell and do stuff like recursively find the outer tags.
Re:SLOW SLOW SLOW... (Score:2)
Either you didn't try hard enough, or you didn't know enough
> I usually let the browser do the parsing in an IFrame, then I just walk the DOM.
It's quite a hack to have an IFrame for this and all that. XmlHttpRequest is cleaner because you can read headers , set headers and even check on status code on return.
> It's much easier than taking a string of XML and trying to break it down like a good parser should. It's far too tempting to cheat like hell and do stuff like re
Re:SLOW SLOW SLOW... (Score:2)
Geez. Who stuck a bee in your bonnet?
It's quite a hack to have an IFrame for this and all that. XmlHttpRequest is cleaner because you can read headers , set headers and even check on status code on return.
Do you have any idea what the subject is even about, or do you just like to rant? The parent poster was talking about parsing XML directly and how slow it was. (You can get an XML string via XMLHttpRequest, BTW.) I responded that I don't wo
Re:SLOW SLOW SLOW... (Score:2)
Re:SLOW SLOW SLOW... (Score:2)
Primarily because of browser differences. The IFrame solution seems to be more portable than responseXML. The other half of it is that I'm still doing development and have temporarily eschewed XMLHttpRequest because I'm not running a server. (It's all internal to itself.) Using an IFrame allows me to perform architecture tests on new applications straight from the files on disk.
instead of "shunting" it into an IFRAME, thus l
Try JSON instead of XML (Score:4, Informative)
I think it's better than CSV even. And it's got bindings to tons of languages, not just Javascript. So producing the server-side is also very easy.
Re:Embrace, extend, destroy ... (Score:3, Insightful)
Funny.
About 5 years ago I was writing extremely rich web applications, using XMLHttpRequest to make client side side-band requests back to the web app, using XML data islands and client side XML document manipulations. Examples include a web timesheet, where the user could manipulate entries (adding new ones, c
Re:Embrace, extend, destroy ... (Score:2)
Re:Embrace, extend, destroy ... (Score:2)
Of course its's not new. Only this wierd new acronym is new, and most kids only know it by this name. All it really consists of (JS, XML, DOM, etc.) have been around for many years and used extensively. There just happen to be real coders out there who instead of giving freaky names to everything just use the available great technology to create great content. These days probably it's becoming more and more frequent that on job interviews one will
Re:Embrace, extend, destroy ... (Score:3, Insightful)
If Microsoft had not done this, and shown the utility of the technology, it is doubtful that Mozilla and others would have the technology now, reducing our choices as developers.
Re:Embrace, extend, destroy ... (Score:5, Interesting)
Re:Embrace, extend, destroy ... (Score:4, Interesting)
So maybe you should have said "MS invented the XMLHttpRequest object which makes AJAX somewhat more convenient."
Re:Embrace, extend, destroy ... (Score:5, Insightful)
> Microsoft is playing catch up.
And given that Microsoft created a very rich version of Outlook Web Access as far back as 1998, it's quite revealing that no one 'figured' out how to make DHTML work on a web app used by lots of people until Gmail came out. Actually, the reason for this is of course that Netscape/Mozilla didn't support it until recently-- although I'm sure the
If it helps you get over it, Adam Bosworth, who was on the IE team then and one of the creators of IE4's comprehensive, script-accessible DOM (which made 'DHTML' possible) now works at Google.
And regarding this toolkit-- it's interesting to see so many people reflexively bash it when Ajax today is a _bad_ mishmash of XML, javascript and HTML. RoR helps but RoR has its own set of problems-- chiefly maturity and applicability to a wide variety of projects. Ballmer got a lot of stick for dancing around shouting 'Developers! Developers! Developers!' but trust me that's how Microsoft earns its living: easy-to-use platforms + easy-to-use development tools.
Re:Embrace, extend, destroy ... (Score:2)
You fail it [amazon.com]
Re:MS AJAX has proprietary extensions (Score:2)