On my flights home from the 2009 BlackBerry Developer Conference in San Francisco I had a chance to read Anthony Rizk’s Beginning BlackBerry Development. I wasn’t one of the lucky folks who received a free copy of the book at the conference – I’d received it in advance of the event and brought it with me to read on the plane home. Anthony did sign it for me at the conference, so that was fun. When I discovered that the book was on its way, I contacted Anthony to find out about his book and see how it compared to mine. It turns out that they’re very complimentary – they both address beginning developers, but cover different parts of the topic.
The book is really good – I enjoyed reading it and learned some things I’ve always wanted to know. First of all, although the title doesn’t say this, the book is a Java book – targeted at BlackBerry developers who want to get started writing Java applications for the BlackBerry platform. It doesn’t cover anything about web development and only covers the platform (BES and MDS) very lightly. You should already be comfortable with Java development; the book doesn’t cover any of the basics, only the BlackBerry specific stuff you’ll need to know to work on the platform. It’s a rather short book, only about 240 pages, so don’t expect it to cover any particular topic in great detail.
Anthony wrote the book in short lessons, each tackling a different part of the whole picture. The book begins with defining a little about the platform, how to obtain and install the development tools (chapter 1) then how to build a simple Hello World application (required for any beginning development book) and test/debug it in the simulator and on an actual device (chapter 2). Next he digs into what makes a BlackBerry Java application and some specific features/requirements of the platform (chapter 3). In all, it’s a great introduction to BlackBerry Java development.
Once you’re beyond the basics, the book starts building a sample application that illustrates how to build an application’s user interface (chapters 4 and 5). What he does is work you through building a login screen for a sample application then extending it to leverage some features of the platform and also how to tweak and tune the UI components Research In Motion provides to make the application look and feel like you want. While much of the chapters cover topics most Java developers will already know, he addresses the BlackBerry-specific stuff you’ll need to understand related to working with the Research In Motion UI Libraries.
The next couple of chapters dig into some both standard and unique capabilities of the BlackBerry platform: Storing data (chapter 6), Network Connections (chapter 7) and location based services (chapter 8). For each of these, the BlackBerry platform supports industry standards/specifications (RMS for data storage, HTTP connections for network access and JSR 179 for location based services) but also has some special enhancements or supports additional options to allow you to create more robust applications. These topics aren’t covered in tremendous detail, but you leave each chapter knowing exactly what you need to know to begin using these capabilities in your BlackBerry Java applications.
Chapter 9 digs into how to package up your application for deployment (through Desktop Manager deployment, BES Push, OTA Pull or through BlackBerry App World).
Anthony has been a BlackBerry Java developer for a long time, so he really knows what he’s doing and it shows in the book. His writing style is very comfortable and he covers each topic not deeply but well. The book is structured in a way to make it easy to digest each topic before moving on to the next, so as long as you know Java, you should be all ready to go after reading it.
The book’s got some typos and errors, but if you’re an experienced developer you won’t have any trouble spotting them and making the necessary adjustments. It’s clear that they rushed the book out to get it released in time for the BlackBerry Developer Conference, so it’s understandable. Anthony told me he’s building a list of these items and will hopefully get them implemented in the next printing.
If you’re a Java developer and want a quick primer to get you started on the BlackBerry Java platform, this book is for you.
If you’ve been a BlackBerry Java developer for some time, the book may have information you don’t already have, but that’s unlikely. If you’re expecting this to be a heavy duty, deep dive into BlackBerry Java development, you’ll be disappointed (but the title should have warned you away anyway). There’s still no reason you shouldn’t purchase a copy and keep it around to lend to those pesky developers who keep asking you simple questions.