Slashdot Mirror


Microsoft Releases Atlas

Jason Lind writes "Much earlier than anticipated, Microsoft announced the release of Atlas this afternoon at MIX 06. For those who don't know, Atlas is Microsoft's AJAX API for ASP.NET 2, which they claim will greatly reduce the effort in developing AJAX style applications on their platform."

19 of 300 comments (clear)

  1. Re:"No Micwosoft! No!"... by sammy+baby · · Score: 3, Funny

    When do they release Thiluth, the Athyrian Thrangler?

  2. If it's anything like the rest of ASP.net... by CastrTroy · · Score: 4, Interesting

    If it's anything like the rest of ASP.net, It will require that you use Microsoft's wonderful web technology, with __viewstates, and other wonderful features. You won't be able to customize it nearly enough to do a professional job, and will only work for really quick and sloppy applications that don't really need AJAX anyway. I use ASP.Net on a daily basis. We've found the best thing to do is to ignore all the form/component stuff that microsoft has built, and just use tools we have built ourselves, which although they do many of the same features, are much more extensible and easier to use.

    --

    Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    1. Re:If it's anything like the rest of ASP.net... by Anonymous Coward · · Score: 3, Insightful

      don't mistake your incompetence for bad software

  3. easier? by Douglas+Simmons · · Score: 3, Insightful
    which they claim will greatly reduce the effort in developing AJAX style applications on their platform

    ... provided you buy and use their coding gui frontend ware?

  4. Ajax is a flash in the pan by jimmyhat3939 · · Score: 5, Interesting
    Personally I think the whole Ajax thing is overblown and will die down in the next year or two.

    Are there good uses for Ajax? Sure. Google Maps is probably the single best example out there at the moment, and I would expect some more to show up soon.

    BUT, will Ajax supplant the client app as the workhorse of productivity applications? Not a chance:

    • Ajax requires all communication be serialized using a Javascript callback scheme that requires extensible but ultimately limiting xml communication between client and server.
    • To get good performance, Ajax forces you to code a front-end application using JAVASCRIPT. Now I've coded some pretty complicated Javascript stuff, but it's just not the right language for writing full-featured applications. It's barely even object oriented, weak typed, etc. And debugging it is a disaster.
    • If instead you decide to have the server make all the UI decisions for you ("put this text here, that box there"), that's fine except you'll see lag anytime you do anything. Imagine trying to update an entire column of data in Ajax Spreadsheet. The server has to send down exactly what to put in each cell and do all the computations for you before you see anything. Google Maps has this problem - I often see white boxes, unrefreshed boxes, etc. and I'm using the latest Firefox!

    The funniest thing for me about Ajax is it basically is just doing what Java Applets can do, only Java is better. WTF?!?!

    --
    Free Conference Call -- No Spam, High Quality
    1. Re:Ajax is a flash in the pan by AKAImBatman · · Score: 5, Interesting

      My thoughts exactly. I cringe to think to what it would be like to maintain an entire Unix application that did everything in X11. Even with a development environment that was built to support X11, I think it would still be a nightmare. X11 is good for little apps like calculators and graphical terminals, but is not the best way to do the entire application.

      Or, on the other hand, maybe we could make widget libraries that do all the heavy lifting of X11 for us? Then we could program to the widget libraries rather than the uber-complex X11 drawing library! Genius!

      The same is true of AJAX. Right now, everyone is programming at the lowest level. What AJAX needs is a higher level set of widgets that can accelerate development. Mozilla took the XUL path, but that won't work for cross-browser applications. We need a general-purpose widget library written using the standard HTML DOM. Then AJAX will become a quick and easy option.

      Unfortunately, Atlas isn't it. This is just a collection of custom tags to simplify and standardize ASP programming.

    2. Re:Ajax is a flash in the pan by pnatural · · Score: 4, Insightful

      Ajax requires all communication be serialized using a Javascript callback scheme that requires extensible but ultimately limiting xml communication between client and server.

      False. The web server can return text, plan old xml (POX), or JSON or anything that can be encoded over HTTP.

      To get good performance, Ajax forces you to code a front-end application using JAVASCRIPT. Now I've coded some pretty complicated Javascript stuff, but it's just not the right language for writing full-featured applications. It's barely even object oriented, weak typed, etc. And debugging it is a disaster.

      False. You're mixing concepts here (performance and client scripting language). Further, EMCAScript isn't OO and shouldn't be: it's a prototype based language. And any developer tackling this problem in today's world should use one of the many freely available JS libs (Dojo, MochiKit, Prototype, etc). Hell, MochiKit has a built in debugger.

      If instead you decide to have the server make all the UI decisions for you ("put this text here, that box there"), that's fine except you'll see lag anytime you do anything. Imagine trying to update an entire column of data in Ajax Spreadsheet. The server has to send down exactly what to put in each cell and do all the computations for you before you see anything.

      Knock, knock, web server calling. HTML UI decisions start on the server and get modified locally by the client. This is the nature of HTML and always has been.

      Google Maps has this problem - I often see white boxes, unrefreshed boxes, etc. and I'm using the latest Firefox!

      Oh, lordie. You realize that Google maps doesn't use Ajax, but instead makes heavy use of IFRAMES? (last i checked, this was true). And you realize, of course, that your connection speed might be to blame?

      You've painted AJAX with a pretty broad and off-base brush. Better luck explaining it to the ignorant.

    3. Re:Ajax is a flash in the pan by SerpentMage · · Score: 4, Insightful

      Considering I wrote a book entitled Ajax Patterns and Best Practices the mistake made by many is the fact that Ajax is not about extending the current Web paradigm. Ajax when done properly includes REST, Web Services and a decoupled architectured. This means the client is not dependent on the server and vice versa. Granted the client makes Web Service calls, but the client does not know the technology used to implement the Web Service.

      What makes me laugh about many vendors in contrast to the community is that they simply don't get it. Microsoft and co think Ajax is a "style" of programming by extending and locking the client to the server. This is plain simply wrong, wrong, wrong!

      Now to address to your questions:

      1) First Ajax does not require XML, but relies on the Permutations pattern. The Permutations pattern is a REST style web service that says the content sent and received by the client and server depends on the needs of the client. That might be JavaScript, XML, bitmap images or even HTML.

      2) Coding a front end in JavaScript is not a problem. Coding everything with JavaScript is a problem. Just like coding everything with Java is a problem. Writing a good Ajax applications means creating a client that calls a server using Web Services.

      3) To address your problem you use the Infinite Data pattern that uses callbacks that sends data to the client as it received.

      Again, part of the problem is that many are considering Ajax as an extension of the current Web Paradigm. Ajax is not that. Ajax is a SOA client that makes Web Service calls. Granted I will give you that companies like Microsoft confuse the issue by creating stuff that completely breaks REST, and Ajax design concepts.

      If you want more information feel free to check out my site http://www.devspace.com/ as I have some prototype implementations of the Ajax and REST patterns that I was talking about (inc source), and look at the Ajax QA. And if you have any further questions just send me an email and I will be more than happy to answer your questions.

      --

      "You can't make a race horse of a pig"
      "No," said Samuel, "but you can make very fast pig"
    4. Re:Ajax is a flash in the pan by FecesFlingingRhesus · · Score: 5, Informative

      see my other post http://developers.slashdot.org/comments.pl?sid=180 799&cid=14959879 it already exits it is called Echo2 it is a open source Java web framework. AJAX is integrated seamlessly into the component model. It is the most comprehensive toolkit I have found. I have been researching them for my new project for several months now and Echo2 is leaps and bounds ahead of the other competing projects.

  5. Mythology, lol by tehshen · · Score: 5, Insightful

    In mythology, Atlas and the Titans revolted against the Olympians, lost, had his brothers betray him, and was punished to carry the world. Is this some sort of metaphor for the IE development cycle?

    --
    Guy asked me for a quarter for a cup of coffee. So I bit him.
  6. Re:Microsoft learning its lesson? by Anonymous Coward · · Score: 4, Informative

    ASP.NET 2.0 has a lot more options, including XHTML.

  7. that's why we need a toolkit by penguin-collective · · Score: 3, Insightful

    All of those problems can be addressed by creating a good AJAX toolkit; a toolkit can fall back to plain HTML when Javascript isn't available, it can do the right per-browser customizations, etc.

    However, from an interaction point of view, AJAX is enormously useful and a big advance over plain HTML pages. It's unfortunate that the underlying technologies are so ugly (Javascript, XML, ...), but, again, with a good toolkit, you don't have to ever think about that.

  8. Re:AJAX is bad by lukewarmfusion · · Score: 4, Insightful

    1. You shouldn't be testing for a UA, but for object support.

    2. You can build accessibility into an AJAXified application, but it will take more work. I find that the people who care enough about accessibility on normal websites are the people who are also willing to put in the extra work making applications accessible.

    3. Another attack vector? Sure, but introducing any technology introduces new risks. That doesn't mean you should dismiss it entirely. Bad code is bad code - no matter whether it's AJAX or PHP or Ruby.

    4. This goes back to accessibility. If a client doesn't have Javascript at all, you need to account for that. If you're writing an app that absolutely requires Javascript, then you need to accept that some users won't be able to use the site.

    5. This is the crux of your argument, I think. Some applications are dependent upon Javascript for a good reason - they aren't normal websites. The example I use is of a university that has thirty or so platform and browser combinations to support. Deploying an internal desktop app is expensive, difficult to support, etc. But a web app can be brought up on all of the supported environments - which means you can build for those and ignore anything that's unsupported (like Lynx). We're talking about interfaces which replace a desktop app - but still need comparable functionality, speed, and interfaces.

    The web has always been a quickly changing landscape. AJAX is a feature on that landscape, not the future of it. Like anything else it has its valid uses and invalid uses, can be abused, and can be done poorly. But so far, none of this is a reason to dismiss it entirely.

  9. Why the un-searchable names? by hazem · · Score: 3, Insightful

    What is it with Microsoft and its penchant for product names that are virtually useless for doing searches?

    Access
    Word
    Windows
    Excel
    Publisher
    Sequel

    Contrast that with:
    linux
    mozilla
    firefox
    mysql
    php

    At least with these, you have a reasonable chance of finding what you're looking for without a ton of other non-related crap.

  10. Atlas? by TellarHK · · Score: 4, Funny

    *shrug*

  11. Well, Here We Go by MikeyTheK · · Score: 3, Informative

    Well, the AJAX wars have started, and M$ maybe just got off the first shot. We'll see. With http://www.morfik.com/'s public beta just around the corner the RAD IDE AJAX tools are finally coming on scene. We'll see what people can do with these tools, and whether AJAX is REALLY as overrated as some are claiming. Personally I'll bet that once people can get their hands on tools that let them build web apps as easily as they can desktop apps (and unplug them, i.e. run them locally or over the 'net, as you can with Morfik) you'll see a huge increase in web applications.

    The number of AJAX tools that are on their way is staggering. http://www.tersus.com/ is one designed for the absolute noob, and http://www.backbase.com/ is also a potential option.

    --
    Friends help you move. Real friends help you move bodies.
    Never forget: 2 + 2 = 5 for extremely large values of 2.
  12. Re:Where's the beef? by earache · · Score: 3, Insightful

    Are you completely retarded?

    How this got moderated up is beyond me. It's obvious that you haven't used Atlas, much less even LOOKED at it.

    The whole point of the library is to hide away the details, so XMLHttpRequest and it's ilk are tucked away neatly in the variety of external scripts that ship with Atlas.

    There are only 4 or 5 controls that come with Atlas, and they're mostly non-visual anyways. The UpdatePanel is a "panel" like control that can automatically reload it's contents on a postback sent via xmlhttprequest. You don't need to do a thing.

    Whomever moderated this all the way to +5 is just as retarded as the original poster.

    It is Slashdot though ...

  13. Did you guys even read TFA??? by moochfish · · Score: 5, Informative

    I'm not really a fan of MS, but I recognize they have a lot going for them. I'm a PHP developer so please don't assume I'm defending it because I like ASP. Really, I don't.

    I think a bunch of people commenting read the press release and made their judgements without actually investigating how incredible the technology is. There was even the flamebait who posted something about cross browser compatibility. Well, watch the freaking demo video before you go trolling. You can find their first of many such demos here:

    mms://wm.microsoft.com/ms/uifx/asp_net_atlas.wmv

    Maybe I find it amazing because I'm not that used to ASP development, but I'm thoroughly impressed how far MS has come in making developing for their platform easy. The demo I pasted above shows him making a pretty standard data grid. That part is cool, at best, to anybody familiar with ASP, and flat out amazing to anybody who's never seen ASP sites being developed. About 2/3 into the video he busts out the new Atlas code (so fast forward to there). It was maybe 3 additional ASP tags to implement full asynchronous functionality plus one more to setup a "updating..." dialog. Suddenly, a page that required refreshes on any action could add, edit, and *sort* paginated data without any refreshes.

    And then he fires up the same code in Firefox and goes to show that it works exactly the same in both browsers. 3 ASP tags.

    I'm sorry, but how can you blindly bash that? Sure there's equivalent technology in the works out there (such as rails), but it doesn't make this any less amazing. If there was a development platform as complete as MS's offering but based on Python/PHP, people would be pissing their pants. To ASP developers, this will make creating AJAX functionality unbelievably easy.

    MS just scored major Hype 2.0 points today. But the hype isn't all unjustified. Again, go learn about this before you bash it.

  14. Microsoft Atlas Shrugged! by Orion+Blastar · · Score: 3, Insightful

    I code Javascript, no two web browsers seem to be able to use the same Javascript and you have to rewrite them for each browser. Then there are those who use web browsers without Javascript like Lynx, or people who disabled their Javascript for fear of Spyware/Adware infecting their system via their browser. Ajax uses Javascript. ASP.NET is supposed to have been designed to be able to run scripts at the web server without running scipts on the client, yet it fails to do this. My old employer tried to switch to ASP.NET when 1.0 was beta back in late 2001. They are still having problems getting ASP.NET working with different browsers that various clients of theirs use, that are not under their control.

    My solution was to use Java, instead of client-side scripting in Javascript and VBScript. Then any browser that supports Java can run a Java servlet and it can be programmed to be easy to use. Just make sure that their JRE version matches the one we use to develop the web applications for and everything should work out. I even worked out XML transfers to be used between the corporate web server and the client web server. We only need write one version of the Java application, instead of several versions of the Javascript support for each web page. The time we would have saved on production would have allowed us to do other things. But, nooooooooooooooooo, they went with ASP.NET because Microsoft promised them the moon, and now they are making posts to Microsoft's Newsgroups asking why ASP.NET is not working as Microsoft said it would. I am just sitting back and enjoying the fireworks and relaxing and being glad I am no longer one of those programmers being lead by Managers who have no idea how technology really works.

    --
    Remember, Slashdot does not have a -1 disagree moderation, and no, troll, flamebait, and overrated are not substitutes.