At the time of writing, a Yahoo search for "web 2.0" estimates 892 million results. In contrast, "Microsoft" only returns an approximate 852 million. That's a lot of interest.
Web 2.0, as we will all have to consider at one time or another, calls for a new approach to development. Applications are not developed for developers, but for the end users, and web 2.0 has drawn our attention to the potential of a user-friendly web application. With the advent of developer-friendly web services, mashups are playing an important part in modern web applications, and as developers, being familiar with methods of exploiting this is clearly of great value, both on resumes for job interviews and in developing our personal projects.
As it's title suggests, PHP Web 2.0 Mashup Projects is a demonstration of the various techniques available for developing mashups in PHP. Through a highly practical format, Shu-Wai takes the reader through a series of projects utilising different web services and APIs, while carefully exposing the reader to a wide variety of technologies and data formats. With careful selection and shaping of language, the book is an extremely effective introduction to the world of mashup development with PHP.
Per the brief summary on the back cover, a mashup is a web page or application that combines data from multiple external sources. Mashups are becoming increasingly popular among developers, as harnessing the power of information already available is often far more efficient and effective than developing formats and collecting data solely for the purpose of building an application. In PHP Web 2.0 Mashup Projects, Shu-Wai takes the reader through five implemented mashups, ranging from simple samples of the power of APIs to a high-end demonstration of the power of web services in a London Tube photo mashup.Shu-Wai takes the reader through a series of sample mashup projects with PHP. His various examples demonstrate making use of simple REST web services to full-on SOAP APIs, and each technology involved is explained clearly and concisely. By making use of a variety of APIs commonly utilised by web 2.0 startups, Shu-Wai succeeds in introducing the reader to an entirely new approach to developing web applications. Popular web services such as those of Google Maps, Flickr and Yahoo! are demonstrated, and each code sample is practical and functional while not overly complex. Shu-Wai also demonstrates rapid development with the use of PEAR packages in a highly effectual manner, complementing the insight into PHP mashups already offered.
A common barrier of entry to the world of mashups is obtaining an understanding of the use of various web services and different data formats. Shu-Wai covers the common topics such as REST, SOAP, SAX, XML-RPC, WSDLs and PHP's SoapClient and DOM classes. All are explained in a nutshell, with excellent barebones examples demonstrating an easily understood implementation of the technology, and Shu-Wai conveniently refers to further reading that readers can use to extend their understanding.
While the practical format is certainly appropriate, it goes some way to hindering understanding and appreciation of the technologies underlying the sample projects detailed, and while most developers may be after purely the familiarity they need to utilise the technologies in their work, this book is a little light on the highly technical details. For example, Shu-Wai clearly explains the use of the DOMDocument (and related) PHP classes, however does not describe the underlying functionality. This may be appropriate for most readers, however those looking for a more academic comprehension of the technologies will need to do further research.
Finally, each sample project is summarised and explained in a detailed format that assists in developing an understanding of the technologies involved. A collection of fully functional code samples from the book is available online, complementing the content and providing a solid foundation for developers to experiment with their own mashups.