Datasheet

Part I: Introduction to Python Frameworks
4
The Starting Line
The goal of this book is to help you discover a new methodology for designing, coding, testing, and
deploying rich applications that reside primarily in the network cloud, rather than primarily on the
desktop. This application style is at the heart of so many modern tools and sites that even if you haven’t
had experience in developing using the model, you have certainly experienced many sites built this way.
The problem with learning an entirely new way to create applications is, as always, where to start. The
authors, being developers rather like you, have always believed that one well-worked example is worth
hundreds of words of prose. You’ll find those in profusion in this book, but it’s important to have an
understanding of why Web 2.0 is important to you as a developer or entrepreneur and how the frame-
works covered will allow you to leverage your Python skills in different and powerful new ways. Thus,
that’s the starting point for the book, and even though this chapter is short on code, it’s long on ideas, so
it will be worth your time to at least skim it. To understand why web frameworks were even designed in
the first place, you should understand a little about the whole Web 2.0 revolution.
What’s Web 2.0?
Skeptics claim that Web 2.0 is little more than a marketer’s buzzword. Mystically inclined types say that,
“To know what it means, you have to know what it means . Like art or smut, you’ll know it when you see
it.” Pragmatists explain that, “Google Maps is Web 2.0. Yahoo! Mail (old style) is not .” The more curmud-
geonly types, such as industry pundit John C. Dvorak, decry the whole meme by saying, “How can you
have a Web 2.0 when we can’t even explain what 1.0 was?” Finally, others in the avant garde claim that
“We’re already on version 3.0!”
Whatever the characterization, most nondevelopers agree that the phrase is very handy for encapsulat-
ing a whole aggregation of cool, modern stuff that’s going on. As a developer, though, you can begin at a
much different starting line, because you have a far deeper understanding of design mechanisms and
implementations than nontechnical types. Web 2.0 begins with understanding the difference between the
traditional Rich Client Platform (RCP) model and the emerging Rich Internet Application (RIA) model.
The History of Application Design for Content Creation
(In One Easy Dose)
As the title of Neal Stephenson’s famous article explains it, “In the Beginning was the Command Line.”
However, the capsule history in this section begins after the advent of windowed graphical user inter-
faces (GUIs), and the emergence of powerful operating systems on expensive compute platforms.
The Desktop Era — No Web
You’re certainly familiar with the RCP model, even if you know it by another nomenclature, such as the
desktop application model . Almost every application you’ve written, used, managed, or deployed over the
last three decades on microcomputers adheres to RCP capabilities and limitations. When you think in the
mode of an RCP developer, you take for granted that the operating system, data access and storage, and