Beginning Atlas series: Why Atlas?
This is the first question everyone asks me when they see Pageflakes. Why not Protopage or Dojo library? Microsoft Atlas is a very promising AJAX library. They are putting a lot of effort on Atlas, making lots of reusable components that can really save you a lot of time and give your web application a complete face lift at reasonably low effort on changes. It integrated with ASP.NET v very well and it is compatible with ASP.NET Membership and Profile provider.
When we first started developing Pageflakes, Atlas was in infant stage. We were only able to use the Page Method and Webservice Method call feature of Atlas. We had to make our own drag & drop, component architecture, popups, collapse/expand features etc. But now you can have all these from Atlas and thus save a lot of development time. The web service proxy feature of Atlas is a marvel. You can point a <script> tag to a .asmx file and you get a javascript class generated right out of the web service definition. The Javascript class contains the exact methods that you have on the web service class. This makes it really easy to add/remove new webservices, add/remove methods in webservices which does not require any changes on the client side. It also offers a lot of control over the AJAX calls and provides rich exception trapping feature on the javascript. Server side exceptions are nicely thrown to client side javascript code and you can trap it and show nicely formatted error messages to the user. Atlas works really well with ASP.NET 2.0 eliminating the integration problem completely. You need not worry about authentication and authorization on page methods and web service methods. So, you save a lot of code on the client side (of course Atlas Runtime is huge for this reason) and you can concentrate more on your own code then building up all these framework related codes.
Recent version of Atlas works nicely with ASP.NET Membership and Profile services giving you login/logout features from Javascript without requiring page postbacks and you can read/write Profile object directly from Javascript. This comes very handy when you heavily use ASP.NET membership and profile providers in your web application which we do at Pageflakes.
On earlier versions of Atlas, there was no way to make HTTP GET calls. All calls were HTTP POST and thus quite expensive calls. Now you can say which calls should be HTTP GET. Once you have HTTP GET, you can utilize Http response caching features which I will explain soon.
I will be writing about lots of Atlas tips and tricks. I am assuming you are familiar with Atlas and you have already tried some quick start tutorials and you know the concepts of Page Method, Web service Proxy, Script Manager etc.