Author: Lyza Danger Gardner & Jason Grigsby
Pros: Comprehensive and on-topic
Cons: Repetitive due to format
Reviewed by: Harry Fairhead
The mobile web is an important topic at the moment but it spans a range of possibilities from making a dumb web page fit on a smaller screen to a complete mobile app. This particular book isn't the first that I've looked at that claims to cover the subject, but for a change the topics included seem to be a reasonable selection.
After the usual Head First book introduction, the first chapter gets straight to the point - how to use CSS to make a web page change its layout to suit different screen sizes. Put like this it makes you wonder what the fuss is about, but many other books never get to this topic. The next chapter deals with changing the layout in more depth and with ways of testing the new layout.
Chapter 3 moves on to consider the idea of a completely separate mobile website. In this case the problem of detecting what the device actually is raises its head and it is a question that is only really answered in detail in Chapter 5. The intervening chapter deals with the problem of what devices is it worth supporting, before moving on to consider in depth device detection using the WURFL database - this is advanced stuff.
At Chapter 6 the book takes another turn, going on to the topic of building a web app that behaves like a native app. To do this you need some help and the first helper is jQuery Mobile, which allows you to build a more natural looking user interface. Chapter 7 brings the server and some new features in HTML5 into the picture so that you can create apps that work offline. Next we look at creating real native apps from web apps using PhoneGap. The final chapter acts as a summary and an orientation for future developments.
The book isn't a complete coverage of the topic and as with all Head First books it tells you what it has left out or not covered sufficiently - testing, remote debugging, device APIS and app stores. Personally I don't think that these are omissions - as they aren't core to mobile web applications and are covered perfectly well elsewhere. The final three appendices cover setting up an XAMP server, working with WURFL and installing Android. The last two are surprisingly advanced for a Head Start book on web apps.
This is a good book - and I can say this adding that I really don't like the Head Start approach. There were times when I wished that the authors could simply have dropped the repetitive, drawn out way of introducing and explaining ideas. The book would be a lot shorter if it was presented in a simpler format. It is clear that the authors do know what they are talking about and it would be really good to have them write another book on the same topic but on a "programmer-to-programmer" basis.
On the other hand if you need to tackle this complicated and messy subject, and you like the Head Start approach, then this a is a really good book.