Book review: “OpenLayers 2.10 Beginner’s Guide” by Erik Hazzard

Disclaimer I: The book publisher PACKT Publishing provided me with a free copy of the book in order to get a review from me.

Disclaimer II: I am the Coauthor of a German book on OpenLayers and other FOSS components that one can use to build great WebGIS applications.

The book “OpenLayers 2.10 Beginner’s Guide” is a hands-on introduction to the OpenSource JavaScript library OpenLayers. It aims to help (first-time) users of OpenLayers to get a good grasp of what the library is capable to do and how one can create great webbased maps with JavaScript. The author Erik Hazzard covers basic (Introduction into object-oriented programming, working with Firebug, etc) and more advanced topics in 10 chapters on more than 300 pages.

To be honest: I was quite happy to have another whole book dedicated to one of my most loved software projects, and this time in English. In my opinion it is very important to have documentation in the form of written books and not only as autogenerated API-docs and online examples.

These are the chapters of the book:

  1. Getting Started with OpenLayers
  2. Squashing Bugs With Firebug
  3. The ‘Layers’ in OpenLayers
  4. Wrapping Our Heads Around Projections
  5. Interacting with Third Party APIs
  6. Taking Control of Controls
  7. Styling Controls
  8. Charting the Map Class
  9. Using Vector Layers, available as free sample chapter
  10. Making Web Map Apps

As the cover suggests (“Learn by doing: less theory, more results”) the focus of the book is on example usage of code and a description of the options one has when interacting with OpenLayers.

I personally think it was a mistake to put the version number of OpenLayers into the title of the book. As this review is being published, the first Release Candidate of 2.11 can be downloaded and tested, so the book seems outdated (while of course in reality most parts of the book are not outdated). Despite of the 2.10-title, the book also contains some reference to version 2.9 of OpenLayers (e.g. page 65 and page 155). I cannot say whether this is just a minor editing error or something else. Erik Hazzard sometimes has reference to non-API properties in his text which is a big mistake in my eyes (e.g. the “properties of a layer”-table on page 67 ff.). As far as I can tell there is no layer property “metadata” that is expected to be set by a user. Please correct me if I am wrong here or if you do not see a problem when non-API properties get promoted in this book. I am open to other opinions. There are some editing mistakes in the book (mainly upper-/lower-case errors) but not to much to be really disruptive.

What I really like is the amount of aspects of OpenLayers covered in the book. You will certainly learn a lot reading this book. The book is easy to read and Erik Hazzard explains things most of the time adequately yet entertaining. The book is driven by a playfull and iterative approach. The additional information in the book (Working with Firebug, Projections, OOP …) will help many readers, The final full web map application shows how to combine the parts discussed in earlier chapters.

Summary: This book does a good job at covering basics and some more detailled aspects of developing map-applications with OpenLayers. It does on the other hand also contain some information that might mislead a user in developing upgradeable and stable web GIS sites. As it is a good read overall and does cover lots of side aspects of developing map applications it is definitely a help when novice users try to delve into the depth of OpenLayers. The target group of the book, OpenLayers beginners, will learn a lot while being well entertained. Buy this book if you are about to develop your first maps with OpenLayers, but please double check with the current project API-documentation whether the properties exist and you are safe in using (and depending) on them.

I rate it with 8 out of 10 possible points.

Edit 2011-05-30, removed typos