Datasheet
Part I: Introduction to Python Frameworks
8
Suddenly, word processors, spreadsheets, and calendar management are woven directly into the fabric
of the Internet, are executed entirely within the confines of the web browser, and are no longer the pri-
vate preserve of a specific vendor. What’s more, the Web 2.0 design doesn’t stop at desktop tool replace-
ments, important as that category is. New classes of applications, such as Base Camp, Flickr, YouTube,
and Picasa are useful specifically because of their networked context — they wouldn’t make much sense
as desktop-only applications. In contrast to Figure 1-1 , Figure 1-2 illustrates that asynchronous outbound
calls may result in a portion of the page being refreshed without a complete browser reload.
1 Enter URL
5 Forward user to a new HTML page
6 Interact with page
13 Interact with updated page
12 Display update
TIME
2 Make synchronous HTTP request
7 Make asynchronous request with
interactions captured as parameters
10 Invoke callback with results
from asynchronous request
4 Return HTTP response
3 Retrieve file to
satisfy request
8 Process
asynchronous
request
WEB 2.0 Process-Example Interaction
User
Web Browser Web Server
9 Continue interacting with page
KEY:
Interacting with page 1
Waiting
11 Update position of page to reflect
results of asynchronous request
Figure 1-2
This is not to say that there are no problems for designers and developers to solve (yes, we will all still
have jobs come the revolution). Even though RIAs usually have several advantages over applications
that run on the client, they’re not without some limitations. For example, compare an RIA e-mail client
like Google Mail (GMail) to a client application like Mozilla Thunderbird. GMail has the advantage of
centralized virus scanning, whereas Thunderbird relies on operating-system scanners. On the other
hand, when you upload an attachment into an e-mail message, Thunderbird allows you to drag and
drop files from any file window into the message, whereas GMail requires you to type in a full file path
and name, or use a less convenient file chooser dialog box. Overall, though, these represent browser lim-
itations or operating system limitations, rather than defects in the RIA model itself.
The following table illustrates some of the capabilities you get for free, just by writing to the Web 2.0
specification.