Palm webOS by Mitch Allen: A Real (Book) Review | webOS Nation
 
 

Palm webOS by Mitch Allen: A Real (Book) Review 11

by Jonathan I Ezor#IM Wed, 30 Dec 2009 1:54 pm EST

Palm webOS by Mitch Allen

As a wanna-be developer, I rejoiced in the announcement in February of O'Reilly Books' Palm webOS by Mitch Allen, read the free first chapter and even purchased the online preview version, in the hopes that it could turn me into a webOS developer. Now that I have read a review copy of the final print version, though, I am sad to say that it did not magically do so. On the other hand, experienced developers and those beginners who already know the basics of HTML and Javascript will find the book a hugely useful resource, and even those who are not yet at that level (but may be considering giving it a try, especially with the recent release of Palm's Web-based Project Ares online development environment) will benefit from its clear discussion, code examples, best practices and identification of pitfalls. Even for the non-developer, Palm webOS provides insight into how applications work and interact on the Pre and Pixi.

 

Author Mitch Allen is the CTO of Palm, and the book benefits from his deep understanding of both the software and hardware architecture of webOS devices like the Pre (the book doesn't mention the Pixi, since it was released prior to the Pixi's launch). Rather than simply talking about webOS development, or rehashing what is already in the free Software Development Kit, Palm webOS leads the reader through the development of a real-world webOS application, an RSS news reader (available via this thread). Beginning in Chapter 2 with the basics of how to create and name a blank application, subsequent chapters demonstrate how to add text and graphics, buttons and sliders, database access and so on.

Beyond the actual development, the book also includes a chapter on localization (formatting applications for multiple countries/languages), information on the Palm Developers Program (Appendix A) a Quick Reference (Appendix B) with some of the most commonly used programming elements (widgets, dialogs, menus, services, etc.), a style guide (Appendix C), and the full source code for the final RSS reader application reflecting its evolution throughout the book (Appendix D). Along the way, Allen uses the O'Reilly "animal" book standard stylesheet and icons (pawprints for tips; bear traps for cautions)to help the reader quickly identify particular elements. (According to the "Colophon" on the final page, the animal shown on the cover is a luna moth, a reference to the "Luna" codename used by Palm for the webOS application environment.) Purchasers also get 45 days free access to the online edition via a code printed in the book, and the book has its own Web page with error fixes, code examples, and additional information .

Palm webOS is clear about its target audience; in the Preface, Allen states,

"You don't need to be an expert, but you will need some basic knowledge of JavaScript, HTML and CSS to follow the examples presented here. This book is intended to provide an introduction to webOS and building webOS applications, but should nto be used as a guide to writing JavaScript code. In fact, I have to warn you that I wrote my first JavaScript code as part of writing this book and it's very likely that you will see several examples of not-so-good JavaScript in here."

As a would-be developer, I was able to largely understand the book's code examples, particular with Allen's explanations before and after each portion. I could not say whether the code was "not-so-good," although a few of the reviews of the book on the O'Reilly Web site suggest that there are some errors within the code provided by Allen. As a guide for further exploration, though, the programming examples serve a valuable function for experienced and novice readers alike, especially when (as suggested by Allen) they continue their learning via the documentation in the webOS SDK. 

One interesting addition to the book is the honest foreword by Greg Stevenson, a PreDevCamp Global Organizer. While praising webOS, Stevenson does not hide the fact that "[t]here have been rough spots" in Palm's relationship with its developers, but nevertheless states "how committed" the company is. (For those that may not have followed the PreDevCamp/Palm story, you can learn about it here.) Stevenson concludes, "[t]hey totally get that their success is intimately tied to an active, prolific community of webOS developers."

Overall, Palm webOS is a must-have for any developer starting to build apps for the Pre and Pixi, and a useful reference guide even for more experienced programmers. For the rest of us, it can teach us more about our devices, or perhaps even inspire us to create our own applications for ourselves or the broader webOS user community.

Pros

Written by Palm's own CTO

Cons

JavaScript code may not be perfect