D-WEB20-402-001
Surveying Web 2.0 Applications

The convergence of Windows and the Web is upon us. Google Maps, Gmail, Flickr and a variety of new AJAX and Rich Internet applications have begun to legitimize moving beyond HTML to deliver interactive applications that deliver the best of the web and the best of the desktop experience. We will show how these techniques are changing the way designers think about their application user interface designs. Today's customers are more demanding and have high expectations from your applications. Implementing effective user interfaces can mean the difference between success and failure in your software development strategy.

This course set is designed to provide students with the technological knowledge and skills to build Web 2.0 applications. Students will learn how to build rich interactive browser-based user interfaces, the building of hybrid offline/online web applications, and how to 'syndicate' content. Students will also be taught how to use and create a web API, how to combine data and services from different sources into a single application, including video streams, and how to provide forums for users to interact.


Description

  • COMING TO TERMS WITH WEB 2.0
    • What is Web 2.0?
    • A Taxonomy of Web 2.0 Applications
    • Web 2.0 Technology Overview
    • Examples of Web 2.0 Design
    • Benefits of Web 2.0 and AJAX
    • Risks of Web 2.0 Approach
    • What sort of value proposition does Web 2.0 offer?
  • GUI design standards and patterns
  • XHTML, HTML5
  • CSS3
  • STANDARD AJAX
    • The problem with traditional web applications
    • UI Widgets for Ajax applications
    • Contacting the server without page refreshing
    • Handling the back button
  • JSON
  • Java Script Frameworks: JQUERY, DOJO, DWR
  • BUILDING MASHUPS
    • What are mashups
    • Google Maps API
    • Del.icio.us API
    • Videos with the YouTube widget
    • Creating mashups with QEDWiki
    • A Sample Mashup
  • SOCIAL NETWORKING
    • Community, blog, wiki
  • Web 2.0 data services (RSS/ATOM, SOAP, REST)
  • GWT
    • The GWT Concept
    • GWT User Interfaces
    • Organizing User Interfaces in GWT
    • Event Handling in GWT
    • Images and Resources
    • GWT Utility Classes
    • History and Bookmarks in GWT
    • RPC Protocol in GWT
  • User Generated Contents
  • CONTENT MANAGEMENT SYSTEMS (CMS)
  • ADOBE FLEX
    • Action Script 3.0
  • The Future of the web
    • Web 3.0
    • The Intelligent Web
    • Semantic Web
  • Upon completion of the Web 2.0 course, students will be able to:
    • Distinguish Web 2.0 applications
    • Identify different Web 2.0 business models and applications
    • Build rich browser-based user interfaces using AJAX, DOJO and Flex
    • Recognize REST principles
    • Discover social bookmarking
    • Create Mashup applications
    • Apply popular Web APIs to connect to other web applications
    • Apply Google Docs APIs to access maps and spreadsheets
    • Build a wiki and/or blog
    • Maintain a web application using a content management system
    • Integrate rich content, such as video, into a web application
    • Build web applications that can function even when the web is unavailable
    • Syndicate web application's content
    • Process other web syndications
    • Build applications to deploy on a Cloud Computing platform

Audience

  • Project managers who are responsible for establishing or managing a web project or Internet strategy.
  • Project leaders who need to know proven steps for web-enabling existing client/server applications.
  • GUI designers who need to know how and when to use the new Web controls when creating user interfaces.
  • Software Developers who are looking to expand their knowledge of advanced UI design.
  • Interaction Designers who are responsible for managing and implementing UI design
  • Business Analysts responsible for documenting requirements for complex user interface applications

Duration

4.5 days

Format

Instructor Lead

Prerequisites

Experience with HTML, JavaScript, Java and web application programming.