Main Page Content
Wrox Professional WAP Review
Rated 3.93 (Ratings: 3) (Add your rating)
Log in to add a comment
(1 comment so far)
Want more?
- More articles in Reviews & Links
- More articles by Ratface
This review appeared first on my mailing list Wap-Dev.
Professional WAP
Publisher: Wrox Press
ISBN: 1-861004-04-4
Chapters:
- Overview of WAP
- Setting up WAP
- WAP Gateways
- Basic WML
- Interacting with the User
- WMLScript
- Usability
- ASP and WAP
- Multiple Device Types using XML and XSLT
- Java, XML and WAP
- ColdFusion and WAP
- Converting Existing Web Sites to WAP
- WAP and E-Mail
- WAP and LDAP/Directory Services
- WAP Security
- Push Technologies
- WTA - Interacting with the Mobile Phone
- VoiceXML- Voice Markup language
- What the Future holds
Appendices
- WML Elements
- WMLScript Reference
- Standard WMLScript Library Functions
- WTAI Libraries
- The WBMP Image Format
- Apache and Tomcat Format
- Glossary
- Resources
- Support, Errata and p2p.wrox.com
Introduction:
This book is Wrox's first foray into the subject of WAP and WML development of mobile applications. It presents a broad overview of the WAP standards and a detailed guide to WML 1.1 and WMLScript. There is a wide discussion of different methods for creating mobile applications and converting existing web material. The book also includes a look at some of the WAP enhancements we can expect to see in the near future, helping developers plan ahead for future functionality.
Review:
When I initially received this book, I was sceptical that Wrox could find enough material about WAP development to fill 800 pages, without falling into the trap of filling up with a great deal of useless side information. On seeing that there were chapters covering ASP, ColdFusion and Java, I thought my fears were justified, but in fact the authors have managed to avoid the problem from being too great by using the different development methods to introduce different techniques a developer might need to use in implementing a strong and flexible use of WAP as an alternative delivery channel for online services.
The book begins with an introduction to WAP as a family of standards and presents the development model and the WAP Forum. It then introduces different ways of accessing WAP content through PC based emulators or phone microbrowsers. The first section of the book then closes with an introduction to WAP Gateways, which introduces the concept in enough depth to allow a developer to make an informed decision as to whether his company requires a gateway and what benefits they might bring. As the actual development of gateways and PC based browsers is so rapid, this information may very quickly become dated, but the central concepts should at least hold true.
The next part of the book brings us into the meatiest content area, an introduction to WML and WMLScript. These two core parts of the WAP developers arsenal are well presented and should answer the majority of questions anyone starting to create WAP applications might pose. Attention is drawn to the differences between various microbrowsers' support, but there are perhaps some problems with the way this is done, which I have outlined below. Anyone who has developed with HTML and / or JavaScript will have no problems picking up the techniques described in these chapters and even complete beginners should find they can develop quite complex applications with a little study. Because WML and WMLS are rather simple languages, they are covered in quite enough depth that most developers' needs should be catered for. The final chapter in this section covers the subject of useability and like many articles on the subject, should be taken as a set of guidelines rather than hard and fast rules. This chapter is well written though and thought provoking especially in its discussions of catering to different microbrowsers and picking which functionality of an existing application should be included in a WAP application.
Part three discusses different methods for generating dynamic WAP content. It was here I was worried that the authors may have been padding out their material, but in fact this section contains some great tips for application developers. It is worth taking a look through each of the chapters, even if it does not cover your technology of choice. The chapter on ASP for instance, introduces us to common beginners issue such as sending correct MIME types in content headers and interacting with WML forms on the server side. This is followed with a look at using XML and XSLT to serve content to different browsers. I must admit that after reading this chapter I felt I was still a little in the dark about this technology - the level of complexity of the solution left me wondering whether for the majority of sites it wouldn't be overkill. Worth following up this subject with a deeper look at the whole subject of XML if that's where your researches are taking you.
There are quite a few developers here who are developing using JSP and they will be pleased by a whole chapter on combining Java, XML and WAP. Once again, I'm no Java expert, but the information here throws some extra light on developing in a flexible way to serve multiple client browsers. Finally part three looks at ColdFusion and WAP - another extremely popular development environment. As someone who develops in PHP and ASP (for different projects), I could complain that the lack of a PHP chapter is a problem, but in all honesty, the techniques presented in these 4 chapters cover the most popular development techniques and are quite easily adapted to your platform of choice with only a little head-scratching! After all, this is a "Programmer to Programmer" book rather than a dummies guide!
The next section focuses on "Developing advanced WAP applications". The first chapter in this section may be of use to developers who need to convert a substantial amount of existing web content that isn't in a database or similar dynamic format. It looks at several existing tools for conversion and how to write your own custom converter. Interestingly this chapter also looks at when it may be worthwhile taking this approach - a useful point if we are to avoid a situation where every other WAP site is a complete clone of a static HTML site - not a very useful or desirable situation. The following two chapters cover integrating WAP with email and directory services. Both cover extremely useful techniques for the portal builder and look at the subjects in surprising depth. However neither is likely to be a complete solution for your needs "out of the box" and with the number of suppliers starting to offer ready made solutions, these chapters will probably mostly be of use in small specific cases. Finally Chapter 15 looks at Wireless security in enough depth to answer the majority of questions the average developer will have an provides a number of strong jumping off points for those who require further information or more developed solutions.
Part five of this book will be both exciting and disappointing for many developers. Here the authors take a look at the future development of the WAP specifications, outlining many of the groovy techniques we will be using in the future, but also spelling out the inevitable truth that the vast majority of these features are not implemented in either the networks or the handsets yet. Push, WTA and the WTAI libraries and VoiceXML are all covered along with an optimistic look at what the future holds for wireless technologies. Mouthwatering stuff!
The book finishes up with an extremely useful set of Appendices, which I personally would love to have in a pocket size reference version. Here are WML and WMLS references, WTAI libraries and more.
Summary:
I did have a couple of criticisms. The Range of different authors for different chapters means that there are discernible style differences throughout the book. It could have benefited from a slightly stronger style guide. One area where this was especially apparent was in the introductions to WML and WMLS. Tucked in amongst the descriptions of different mark-up tags and code functions are various comments about the inconsistent support between various browsers. As only two browsers are covered in the book, (Nokia SDK and UP.Simulator) these comments would have been better either broken out of the main text in the form of a standard warning that this is a known area of inconsistent support, or perhaps discussed in a separate chapter. Finally I felt that the index was awkward to use in places - the first thing I tried to look up was information about character entities. Finding nothing under "character" or "entities" (or even "special characters") I gave up and flicked through the book to find the info I was looking for. A couple of days later I noticed that it was under "WML - special characters", which in a book about WAP struck me as rather like placing information about arrays under "Perl - arrays" in a book about Perl programming!
Those small niggles aside, I would recommend Professional WAP to anyone looking to buy a reference for their WAP developing adventures. It provides all the information a developer needs to get started in all aspects of developing mobile services. Fortunately it doesn't answer every question, meaning that lists such as ours will continue to flourish! For complete non-programmers, a great deal of this book will be overcomplicated. However the introductory chapters covering WML and WMLS should mean that even complete beginners can produce useful content. Experienced programmers will find a good coverage of techniques for extending their applications to mobile users.
Further Information:
Professional WAP has a cover price of $59.99 (US), $89.95 (Can) and �43.99
(UK). The author list is:
Charles Arehart, Nirmal Chidambaram, Shashikiran Guruprasad, Alex Homer, Ric
Howell, Stephan Kasippillai, Rob Machin, Tom Myers, Alexander Nakhimovsky,
Luca Passani, Chris Pedley, Richard Taylor and Marco Toschi.



