Before I launch into details about Atlas, and the presentation at TechEd that myself and Tatham Oddie will be doing on Atlas, I thought it best to give an overview of Atlas for those who are unaware of exactly what it is.

Atlas is an evolution and aggregation of web technologies brought together in a single framework for ASP.NET. One of the main components is a rich client side (read javascript) framework that utilises DHTML and a very .Net server side looking programming paradigm to provide a wrapper, or layer of abstraction around the basic DHTML and script operations. This allows Atlas to provide compatibility with other browsers such as Firefox, Opera, Safari etc.. (so you dont have to) and to also allow you to do things in Javascript like:

var myTextBox = new Sys.UI.TextBox($('idOfTextBox'));

While not quite C# or VB.NET, you can see the use of namespaces and that it has a very serverside language look and feel to it. Included in this client side framework are timers, delegates, WebRequests, StringBuilders and a host of other framework components. No new technologies are used here, just a rich and structured implementation around existing technologies.

Atlas makes use of the XMLHttpRequest object to allow asynchronous operations such as calling web services on the server and methods that exist within your web page which are processed on the server. These can be accessed "invisibly in the background" or asynchronously from your web page, that is, without interruption to the user as a normal postback would. Again, this technology is nothing new and has been around for a number of years.

To leverage this very rich client side framework, Atlas provides a series of server side controls which are most familiar to ASP.NET developers. Most notable is probably the UpdatePanel. Using this, you can place your web page content inside an UpdatePanel, and have its contents update via a serverside call without requiring a traditional postback. All the DHTML client side magic is hooked up for you and you dont need to touch a line of Javascript.

In addition, Atlas makes it easy to create "Mashup" sites that utilise and aggregate content and services from other sites such as Microsoft Virtual Earth and flickr. Atlas utilises concepts such as service "bridging" to achieve this.

Finally, Atlas provides support on the client for server side features such as the ASP.NET profile , membership and authentication services.

All these features are tied together in Atlas to make the development of rich client applications on the web much easier and to allow ASP.NET to become an excellent platform for developing advanced, dynamic (dare I say it) Web 2.0 like web applications.

So now I have done the fluffy overview, next will be chewy chunks of detail....