| |
| |
| |
|
|
|
Mastering Web 2.0 Technologies |
|
Duration:
5 Days |
|
|
This course is intended for web developers who already have experience with building
web applications and want to learn how to build the next generation of web applications.
- Experienced web developers
| |
Attendees must be proficient in web application programming in order to do the labs.
In particular, attendess should be proficient with both HTML and JavaScript.
Attendees should also be proficient with at least one server-side platform, such as Java,
Ruby on Rails, or PHP.
|
|
|
Description
|
Once the province of client-server applications with very limited GUIs,
the web has become a rich platform for application development. Recently
the web has spawned a new generation of software that fosters communities
of users, empowering them to create, share, and participate in the virtual
community. Another trend has been the maturing of the ASP model, where
software or services are hosted on a server and delivered via the web.
What distinguishes these applications from the earlier generation of web
applications is both conceptual and technological.
On the conceptual side is the commitment to the web as a platform, from
the business model to the user interaction. Instead of using the web as
another broadcast medium or a fancy mail-order catalog, a Web 2.0 application
tries to take advantage of the web-as-platform, bringing together users with
the site creators and with each other.
On the technological side lie a host of special techniques designed to enhance
the user experience and to overcome the technological limitations of previous
web applications.
This course will focus on the technological side of Web 2.0, giving you all the
information you need to build advanced and compelling Web 2.0 applications, including
how to build rich browser-based user interfaces with AJAX and Adobe Flex, how to build
hybrid offline/online web applications with Adobe AIR, how to syndicate content with
XML and RSS or ATOM, how to use and create web APIs, how to combine
(i.e., mashup) data and services from different sources into a single application,
how to work with video streams in a browser or other rich internet application (RIA) platform,
how to provide forums for your users to interact via wikis or blogs,
and how to manage the content of Web 2.0 applications using Content Management Systems.
This course also teaches you how to create and use web Gadgets like the Google gadgets
and the Lotus gadgets.
|
|
Objectives
|
Upon completion of this course, attendees will be able to:
- Understand Web 2.0 applications
- Identify different Web 2.0 business models and applications
- Build rich browser-based user interfaces using AJAX, DOJO and Flex
- Understand REST principles
- Understand social bookmarking
- Develop applications using Del.icio.us
- Create Mashup applications using JavaScript and PHP
- Create Mashup applications using Lotus Mashups
- Use popular Web APIs to connect to other web applications
- Use Google Docs APIs to access maps and spreadsheets
- Build a wiki and/or blog using QEDWiki
- Maintain a web application using a content management system
- Integrate rich content, such as video, into a web application using the YouTubetm APIs
- Build web applications that can function even when the web is unavailable
- Syndicate your web application's content
- Process other web syndications
-
Build applications to deploy on a Cloud Computing platform such as
Amazon EC2 and Hadoop
|
|
Course Outline
|
Coming to Terms with Web 2.0
- What is Web 2.0?
- A Taxonomy of Web 2.0 Applications
- Web 2.0 Technology Overview
- Representational State Transfer (REST)
- Social Bookmarks
Introduction to Ajax
- The problem with traditional web applications
- UI Widgets for Ajax applications
- Contacting the server without page refreshing
- Handling the back button
Dojo Toolkit
- Introduction to DOJO
- Dojo Widgets library
- Containers and Layout
- Event Model
- DOJO and AJAX
- Handling JSON responses
- Handling the back button using Dojo
Building Mashups
- What are mashups?
- Google Maps API
- Del.icio.us API
- Videos with the YouTube widget
- Creating mashups with QEDWiki
- A Sample Mashup
Lotus Mashups
- Introduction to Lotus mashups
- Lotus widgets
- Visual mashup builder
- Creating custom widgets
- Using the Google Gadget widget
Social Networking
- Creating a community
- Adding a blog
- Adding a wiki
- Managing user content
- Collaborative documents with QEDWiki
- Categorizing with tags
- Customizing content for users
| |
Lotus Connections
- Introduction to Lotus Connections?
- Components
- Profiles
- Blogs
- Creating communities
- Creating community feeds
- Creating bookmarks
- Dogear
- Organizing activities
Content Management Systems (CMS)
- Introduction to Content Management Systems
- Joomla!, a free, powerful CMS
- Installing Joomla!
- Customizing Joomla! websites
- Adding polls
- Create modules
- Building Joomla! extensions
Cloud Computing
- What is Cloud Computing?
- Google's MapReduce
- Network Storage with Amazon S3
- Cloud Computing with Amazon EC2
- Cloud Computing with Hadoop
Adobe Flex
- Introduction to ActionScript
- The Flex development environment
- Using the YouTubetm API from Flex
- Creating a juke-box application
Building Offline Applications using Adobe AIR
- ASP model
- ASP mission-critical applications
- Cutting the network cord
- Introduction to Adobe AIR
- Accessing local files and resources
- Using a local database
|
|
|
|