- Paperback: 320 pages
- Publisher: O'Reilly Media; 1 edition (July 17, 2010)
- Language: English
- ISBN-10: 0596806159
- ISBN-13: 978-0596806156
- Product Dimensions: 7 x 0.6 x 9.2 inches
- Shipping Weight: 13.6 ounces (View shipping rates and policies)
- Average Customer Review: 6 customer reviews
- Amazon Best Sellers Rank: #2,186,869 in Books (See Top 100 in Books)
Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
To get the free app, enter your mobile phone number.
Building the Realtime User Experience: Creating Immersive and Interactive Websites 1st Edition
Use the Amazon App to scan ISBNs and compare prices.
The Amazon Book Review
Author interviews, book reviews, editors picks, and more. Read it now
Customers who bought this item also bought
About the Author
Ted Roden was the first full-time developer hired on at Vimeo.com, and currently works in the Research and Development group at The New York Times. His work researching and prototyping topics closely related to the content of this book has been profiled by Harvard University's Nieman Journalism Lab (http://bit.ly/f7rdJ http://bit.ly/YzELI). At the Times, he has also worked on bringing election night coverage, maps, and updates to the mobile website, as well as March Madness fantasy brackets. He is also the creator of a popular social bookmarking site: enjoysthin.gs.
Top customer reviews
Ted Roden takes a smattering of use cases and dives deep, building non-trivial sample applications to demonstrate the how-to of adding realtime features to your web application.
The book will be exceptionally useful if you are using a technology stack similar to the author's (python and google app engine play critical roles), and have use cases similar to those explored in the book. Even without a good match, this is a very useful book simply because Roden really does understand his subject matter, and highlights the most important concepts to understand along the way. The writing is clear. The structure makes sense.
In organization, the book begins with chapters that build well constrained applications to demonstrate some basic patterns. Roden covers syndication (SUP, PubSubHubbub), basic browser polling mechanisms including explanation of JSONp and long polling, server side mechanisms for dealing with high concurrency and data throughput (Tornado), chat, IM, SMS, and Analytics. The book concludes with the building of a reasonably meaty game that adds authentication and geolocation to the preceding concepts.
These patterns cover a wide range of common realtime design problems, but they are not presented as a comprehensive survey of available tools and patterns. For the reader interested in grasping the range of possible tools, this will be a somewhat frustrating book. For the reader who has no intention of using Python or Google App Engine, there is a lot of material that at first seems skim-worthy. However, Roden's strength is in his pragmatic get-it-done approach. The details of his implementations are important, and his low-level discussions are a mistake to skip.
I could imagine a more useful book for the purpose of a systematic exploration of realtime technologies and patterns, but in the absence of such a volume, this one has a lot of wisdom for developers starting to dip their toes in the realtime waters.
Building the Realtime User Experience breaks down the technologies that make the most sense for a developer to deliver to the user in realtime such as syndication and instant messaging, for instance. One thing the book does that I appreciate is it presents the examples found throughout using different languages, applying the most practical language for a give scenario or toolkit. Doing this does not make understanding the examples very difficult, however, and any developer with reasonable coding skills should be able to follow along in any language without difficulty.
The first chapter gives an introduction into what "realtime" means in terms of the Web and development and lays out the languages the examples will use. From Chapter 2 on, the book jumps right into the different technologies that present well in a realtime format starting with syndication. Roden focuses on two technologies for syndication, Simple Update Protocol (SUP) and PubSubHubbub, giving each protocol pretty much equal treatment, leaving it for the reader to decide which protocol to implement. Chapter 3 discusses how to implement widgets that will display realtime on a web page, using Twitter and FriendFeed as examples. What was of more use was the discussion in Chapter 4 on server-side "push" technologies, and the transition into Chapter 5, which introduces the reader to Tornado - an excellent chapter that shows through example how to get Tornado running and in use on a site.
The next three chapters deal with chat, instant messaging, and SMS respectively. In each chapter, Roden gives examples on how to build an application around these technologies, which a web environment can then utilize. The chat application built throughout Chapter 6 is quite robust, as is the instant messaging client/server created in Chapter 7. Chapter 8 then extends the instant messaging service by integrating SMS into it.
I found Chapter 9 to be an interesting chapter, but it differs from the rest of the book in that it focuses on what a developer can do with analytics to view a site from an administrative point of view in realtime, instead of focusing on delivering something realtime to the end user. The examples yielded some interesting concepts and left me considering all of the possibilities for back-end development that I more often than not neglect or even disregard in my own development. Of all the chapters in the book, I think this one is the one I am most thankful Roden took the time to write. Roden finishes the book with a "Putting It All Together" chapter that takes the different applications built throughout the preceding chapters and mashes them together into a realtime game that could be pretty fun with a group of friends.
Overall, Building the Realtime User Experience is a terrific introduction into the realtime Web, and shows the reader just some of the technologies that may work well on a site. The examples are thorough and yield robust applications that are tweakable and integrate into existing sites. I would recommend this book to anyone interested in developing applications or widgets for their site that work in a realtime manner.
This book is carefully named. Most "user experience" books tend to focus on usability and human interaction issues, "heat" maps and other techniques. The emphasis in this book is the first word in the title, "Building..." The book and its accompanying Web site of working examples has an exclusive focus on implementation.
"Building the Realtime User Experience" will guide, in very direct language, that developer who has just taken on the task of building a server push application.