MSDN Seminar : The Next Web NOW! Better User Experience with ASP.NET

Smith Suksmith

MVP - Solutions Architect Director - Office of Computer Clustering Promotion

MSDN The Next Web NOW! 11/22/2006 Is this the right direction?

MSDN The Next Web NOW! 11/22/2006 MSDN The Next Web NOW! 11/22/2006 Web 2.0 Overview

GET REMIX DELIVER

Population stats, Official Data m Satellite maps, TV programs, iTunes, Census, Government, ISBN, Trailers Traditional media Aggregate Interface Rich UI - AJAX Annotate - REST - DHTML Convert - RPC - Flash Blogs, Wikipedia, User Data m Filter - SOAP Amazon review, Index VISUALIZE IMDB feedback, Blogs, Social software, Format - Maps podcasts, Flickr Photos, Audio, Video Map - RSS - Calendar Rank - Atom Transform - KML SELF-SERVICE - JSON Google Search, Creative Commons, - Contextual Technorati Cosmos, Aggregated Data m Perpetual Beta, - iCal/hCal - Advertising PageRank, SplogSpot, Release early, - BitTorrent - Payment Amazon Top Sellers, Ranking, Public calendar Release often, Ebay reputation Hacking is OK, Address DEVICES Trust your users, - Permalink - PDA Service – No software - Granular - Phone - Loosely Del.icio.us, - Everywhere Metadata m Flickr tags, joined Technorati Cosmos, Tags, geourl, Links, Plazes geo-location trackback, session

Source: Peter Forret MSDN The Next Web NOW! 11/22/2006 Web 2.0 vs SOA

Web 2.0 SOA Software as a service Software as services Interoperability based on Interoperability based on Web principles Web standards Applications are platforms Applications are platforms Encourages unintended Permits unintended uses uses Mashups Composite Applications Rich user interface Little user interface guidance Architecture of Little prescription of user participation participation

Source: Dion Hinchcliffe - http://web2.wsj2.com/continuing_an_industry_discussion_the_coevolution_of_soa_and.htm MSDN The Next Web NOW! 11/22/2006 2.0 Model

MSDN The Next Web NOW! 11/22/2006 MSDN The Next Web NOW! 11/22/2006 MSDN The Next Web NOW! 11/22/2006 MSDN The Next Web NOW! 11/22/2006 What’s else?

MSDN The Next Web NOW! 11/22/2006 User Experience

MSDN The Next Web NOW! 11/22/2006 MSDN The Next Web NOW! 11/22/2006 What is user experience?

Coffee? Entertainment? Transportation?

Windows Vista Office 2007

MSDN The Next Web NOW! 11/22/2006 User Experience

MSDN The Next Web NOW! 11/22/2006 UI Trends / The Early Years

The first human-computer interfaces were strictly utilitarian.

MSDN The Next Web NOW! 11/22/2006 UI Trends / The Command Line

The next wave of computer interfaces focused on increasing productivity for expert users.

MSDN The Next Web NOW! 11/22/2006 UI Trends / Dawn of the GUI

Graphical User Interface (GUI)-based operating systems strived for system- wide consistency.

MSDN The Next Web NOW! 11/22/2006 UI Trends / The Web

..then the Web happened. In the evolutionary history of software user interfaces, the advent of the began a Cambrian explosion of UI diversity.

Certain conventions such as: - the shopping cart, - tabs, - navigation bars, and - search boxes catch on and are nearly universally adopted.

MSDN The Next Web NOW! 11/22/2006 UI Trends / The Desktop

Operating systems respond to user demand for compelling user experience.

MSDN The Next Web NOW! 11/22/2006 UI Trends / Blurring the Web/Desktop Boundary

While the web was influencing and application user interfaces, web applications were becoming more robust and desktop-like.

MSDN The Next Web NOW! 11/22/2006 UI Trends / Convergence

As web and desktop technologies become more intermingled, the distinction between “web app” and “desktop app” is becoming less and less clear.

- iTunes Music store - Google Desktop Search - Dashboard Widgets built with web technologies

MSDN The Next Web NOW! 11/22/2006 Presentation Roadmap

WPF Better user experience leads • the “Media Web” • unprecedented branding, to increased revenues differentiation and personalization

ASP.NET AJAX • improved responsiveness and ease- of-use • Improved customization

HTML + JScript • improved navigation • user tracking and customization HTM

L• greatest reach revenue/user

ease-of-use, personalization, differentiation, richness

MSDN The Next Web NOW! 11/22/2006 4 more Major releases this year

IIS 7.0 on Windows Vista Unified configuration, administration, extensibility SharePoint 2007 Collaboration, document management, portal, business intelligence, content management Built on ASP.NET 2.0 with deep customization Expression Web Designer Rich HTML/ASP.NET tool ASP.NET AJAX V1.0

MSDN The Next Web NOW! 11/22/2006 XmlHttp JavaScript

MSDN The Next Web NOW! 11/22/2006 ASP.NET AJAX

A framework for building next generation, cross-platform, browsing experiences

Ubiquitous, cross-platform, browser support Most-productive framework for building AJAX- enabled web applications Integrated with ASP.NET 2.0 and VS 2005 No cost, free tool support, easy to use Fully supported product

MSDN The Next Web NOW! 11/22/2006 Things we’ve learned along the way… the along learned we’ve Things

JavaScript is super flexible… super is JavaScript But not everyone likes JavaScript… likes everyone not But JavaScript becomes exponentially harder as the # of lines of JavaScript code increases Solid JavaScript framework architecture critical to building real-world AJAX solutions Infinite number of cool features to implement But people want a stable, fully supported, API that they can use immediately… use can they that

MSDN The Next Web NOW! 11/22/2006 Introducing ASP.NET AJAX 1.0

Works on top of ASP.NET 2.0 and VS 2005 Delivers ASP.NET AJAX foundation “core”: foundation AJAX ASP.NET Delivers JavaScript type-system JavaScript<->.NET Networking Serialization JavaScript library of common routines ASP.NET Server Control Integration Fully supported Microsoft product Standard 10 year product support lifecycle

MSDN The Next Web NOW! 11/22/2006 ASP.NET AJAX Extensions

ASP.NET ASP.NET AJAX AJAX Extensions Toolkit Value-Add ASP.NET CTP AJAX Server Side Extensions Client Side Microsoft AJAX Library

MSDN The Next Web NOW! 11/22/2006 ASP.NET AJAX Web Server

ColdFusion Browser Microsoft AJAX Clients Library Apache and PHP

IIS and ASP.NET IE PreviewGlitz.js ASP.NET 2.0 AJAX PreviewDragDrop.js Extensions

Firefox PreviewScript.js JSON Bridge Support

AjaxWebForms.js Membership and Personalization Support

Safari AjaxRuntime.js ASP.NET Server Control Integration

ASP.NET AJAX Control Toolkit

MSDN The Next Web NOW! 11/22/2006 Microsoft AJAX Library

Compatibility layer for browsers and platforms  Support for Windows Internet Explorer, /Mozilla, Script core runtime: a rich type system for JScript Classes, namespaces, inheritance, interfaces Event handlers Microsoft AJAX Library Object serialization

Base class library and networking services Controls and Components Helper classes for developers (subset of .NET BCL) Management of asynchronous network operations Component Model and UI Framework Component model and UI framework Declarative scripting (XML script definitions) Base Class Library Extensible component and control model Data binding, presentation, and validation Script Core

Client components for common scenarios – examples: Browser Compatibility TextBox, Panel, Label, etc. ListView and DataView for rendering templated data UI behaviors such as drag and drop, tooltips, auto-completion

MSDN The Next Web NOW! 11/22/2006 ASP.NET 2.0 AJAX Extensions (Server-Centric Programming Model)

Browser ASP.NET Application

Initial Rendering Pages Presentation (UI + Behavior) (HTML/CSS) Input Data UI Behavior Updated UI + Behavior (Managed Code)

Microsoft AJAX Library ASP.NET

Component/UI Client Page Application Framework, Application Framework, Services Controls Services Server Controls

MSDN The Next Web NOW! 11/22/2006 Client-Centric Programming Model

Browser ASP.NET Application

Presentation Initial Rendering (HTML/CSS) (UI + Behavior) Pages ASP.NET AJAX Service Data UI Behavior Proxies Web (Script) Data Services

Microsoft AJAX Library ASP.NET

Component/UI Client Page Application Framework, Application Framework, Services Controls Services Server Controls

MSDN The Next Web NOW! 11/22/2006 ASP.NET AJAX 1.0

MSDN The Next Web NOW! 11/22/2006 ASP.NET AJAX Control Toolkit

Separate download from core ASP.NET AJAX Great library of free ASP.NET AJAX enabled controls Download from http://ajax.asp.net/

Developed using a collaborative source model All source freely available with modification license Both Microsoft & non-Microsoft developers can contribute

Already contains 30 really cool controls Goal is to get 50-100 great controls over the next months

MSDN The Next Web NOW! 11/22/2006 AJAX Control Extenders Controls that can AJAX-enable existing HTML UI and ASP.NET Server Controls

Details...

Blah, Blah, Blah
Blah, Blah, Blah
Blah, Blah, Blah