O'Reilly Book Reviewer

I review for the O'Reilly Blogger Review Program

Monday, April 16, 2012

Video Review: Strata Conference Santa Clara 2012: Complete Video Compilation

Video Review: Strata Conference Santa Clara 2012: Complete Video Compilation
The Business of Data
Alasdair Allan

This is an excellent video compilation by all measurable standards. I had absolutely just a little idea was Hadoop was and very little knowledge about the challenges facing today's world in "Big Data" terms that traditional databases (SQL!) were not able to meet. I absolutely loved watching all of the Hadoop videos. I admit I was totally biased towards Hadoop as that is the next big thing at my work place and everyone wants to jump in. This video series has made me quite competent and confident in speaking about Hadoop, discussing ideas with my superior and peers, and earning tremendous respect with other virtual teams at my work place. I didn't miss being at the conference at all. This video takes you right there. Anyway, I wouldn't have had the time to be at all the sessions unless I cloned myself. This entire compilation let's me watch videos on my time.

I will be watching videos on the other topics like Geo Data visualization, Apache Cassandra, etc, when I am a little bit over the Hadoop fever. This is a priceless collection!

Wednesday, April 11, 2012

Book Review: 20 Recipes for Programming PhoneGap: Cross-Platform Mobile Development for Android and iPhone by Jamie Munro

This is a small, concise book of about 76 pages containing a variety of recipes using PhoneGap to build device agnostic applications using GPS location, maps, media, accelerometers, and much more. This book assumes you already know the basics of PhoneGap and will point you to the "Getting Started" link if you are not already familiar with using PhoneGap. You will also need to download jQuery and jQuery mobile library and setup your system before trying any of the recipes. It's not that difficult though and you should be doing that before picking this recipe book.

Each of the 20 recipe provides a systematic Problem/Solution/Discussion/Code format. From simple recipes to detect if the device is ready, detecting network status changes, retrieving device information, the book advances to more complicated recipes like using the GPS and displaying a position on a map, using the compass for navigation, using the accelerometer, etc. It also has recipes on saving data to a remote server, capturing audio and video, and extending PhoneGap with plug-ins.

The nice thing about this book is that it is easy to read and recipes can be quickly tried out. I finished reading this book in about an hour. It has found a place in my reference shelf to reach out to when needed.

Wednesday, March 28, 2012

Book Review: Mobile Design Pattern Gallery by Theresa Neil (O'Reilly)

Mobile apps have become quite the rage. Forget about consumer apps, these days even enterprise IT teams have been asked to develop corporate apps for the tablet. I was quite surprised myself when my project lead took me aside the other day and asked me, "When can we have a lite version of our web app on the iPad?". A lite version! I had no idea what that meant or where to begin. For sure I knew that the web app that looks super cool on the desktop would look like a disaster on the tablet. Think Mobile First! Who does that? Certainly not me. Old UI habits die hard. However, as Darwin said, "It is not the strongest of the species that survives, nor the most intelligent that survives. It is the one that is the most adaptable to change."

I knew I had to start with my screens. Unfortunately my years of knowledge of desktop browser UI designing was of not much use. I can throw a hundred UI components in the desktop browser and it will just work. Mobile UI design is a totally different ball game. So I got this book!

This book will not teach you mobile programming. There are plenty of other books to do that. This is the ONLY reliable book that has a catalog of all mobile UI design patterns. Do you like the Facebook and LinkedIn apps? Did you know the names of the layouts for each of the screens in those apps? I didn't until I read this book. I learned quite a lot about designing navigation, forms, tables & lists, searching, charts, etc. The chapter on designing Invitations was pretty intuitive. I really hadn't noticed the power of invitations and how useful they are for mobile apps until I read this chapter. The book ends with a powerful chapter on anti-patterns - things not to do in a mobile app should be a part of your strategy in designing your mobile apps. Appendix at the end provide valuable additional resources including the website of this book. Also provided is a summary of all the UI design gallery in this book so you can always go to the end of the book when you are in a hurry.

Tuesday, March 13, 2012

Book Review: jQuery Mobile: Up and Running by Maximiliano Firtman (O'Reilly)

jQuery Mobile has taken the world of mobile development by storm. With an incredible fully enhanced A-grade AJAX support for all the major platforms and desktop browsers, it has become a viable choice to start coding mobile applications quickly compared to the step learning curve for native development. Not only that, you can also deploy your jQuery mobile webapp natively to many mobile devices using the phenomenal PhoneGap. This book will teach you how.

One of the drawbacks of this book is that it assumes you know jQuery, which is fine for the most part. Event handling and Theme rolling are explained very nicely. You would need another jQuery book to supplement this jQuery Mobile book.

You don't need this book if you are not doing any mobile development but, if you are, then this is one of the books you must have on your bookshelf (or a mobile device like Kindle or iPad).

Sunday, February 19, 2012

Book Review: The Little Book on CoffeeScript by Alex MacCaw

Whether you love it or hate it, JavaScript is back with a louder than ever bang, thanks largely to HTML5. However, frameworks like JQuery provide concise syntax that eliminates the need to write buggy and verbose code. So why CoffeeScript? Curiosity led me to pick up this "little book". It turns out that CoffeeScript is a language that compiles down to JavaScript with a syntax inspired by Ruby and Python. In a little book of 6 chapters and 48 pages, Alex MacCaw cuts to the chase and explains the nuts and bolts of CoffeeScript neatly.

In the first chapter, the author goes over the CoffeeScript syntax, variables, scope, functions, looping, flow control, etc - the usual, gentle, "hello world" type introduction. Things start getting interesting from chapter 2 as the book dives into CoffeeScript classes and goes into a little bit more detail into OO related topics pertaining to CoffeeScript. Chapter 3 covers CoffeeScript idioms like iterating over arrays, using Maps, select filtering, and other operations related to arrays. This chapter also covers how to use external libraries (like JQuery) which is extremely useful.

Chapter 4 introduces the Cake (yummy!) build system to compile CoffeeScript. This is the best chapter in my opinion as it contains detailed information on how to maintain your code and not let it burgeon into sphagetti. I was delightfully surprised to see a section on deployment with Heroku. Chapter 5 guides you into avoiding pitfalls using CoffeeScript. This is really good to know as it will avoid hours of debugging later. Chapter 6 provides a conclusion about the intent and philosophy of CoffeeScript emphasizing that "It's Just JavaScript". The book invokes your curiosity to try out other compile-to-JavaScript languages on your own. The book will not make you an expert in CoffeeScript but does a great job of laying down a strong foundation.

Wednesday, February 15, 2012

Book Review: Beginning PhoneGap by Thomas Myer (John Wiley & Sons, Inc)

There are two times PhoneGap made big waves in the mobile developer community. The first time was when the first PhoneGap code was authored at the San Francisco iPhoneDevCamp in August 2008. The second time was at the Adobe MAX in October 2011 when Adobe announced that it had bought Nitobi, the maker of PhoneGap. PhoneGap is an amazing technology that lets you unleash mobile applications to 7 platforms using the same code base. It makes the "write once, deploy anywhere" aspiration come true. Beginning PhoneGap by Thomas Myer is an excellent book to get started with PhoneGap.

This book is targetted for anyone with an intermediate knowledge of HTML, CSS, and JavaScript that is looking to develop mobile applications quickly using PhoneGap. Step-by-Step the author explain using PhoneGap to develop applications for the 3 major platforms - iOS, Android, and Blackberry, with an honorable mention of the other platforms like Symbian and WebOS. The first three chapters are devoted to learning the basics of setting up PhoneGap on your machine. From chapter 4 through chapter 14, the author dives straight into the PhoneGap API with Events, Network and Notifications, Accelerometer, Compass, Geolocation, Media, Camera, Storage, Files, Contacts, and Capture. Each chapter introduces the topic, provides sample codes to try out, then explains clearly what the code does. The last chapter contains information on how to design and build an app from scratch using the Capture, Geolocation, Storage, and Files API.

There is very little fluff and lots of useful and to-the-point stuff. I finished reading the first five chapters in less than an hour. I was able to finish the rest of the book over the weekend. The author has provided lots of screenshots and sample code to make it easy to learn. Buy this book and make your PhoneGap foundation strong. I strongly believe PhoneGap has a promising future and this book is the first step to lead you there.


Saturday, February 11, 2012

Book Review: Software Change Management: Case Studies and Practical Advice by Donald Reifer

Unlike other books on Software Change Management, Donald Reifer brings a fresh new perspective dedicated to the fearless few and brave agents of change. Introducing or changing software processes is not for the faint of heart but Donald bring his decades of mastery in this field into a dozen chapters with 10 real-life scenarios. The nice thing about this book is that it explains how to introduce change by using sensible and politically sound tactics. Indeed some change agents fail miserably because even though their intent was good, their expressions might come across as combative and without senior management buy-in. This book teaches not just "what" to do but also "how" to do it and what to "watch out" for.

This book is targeted for Project Managers, CIOs, Senior management, and anyone desiring to be a lean practitioner in the IT industry. Overall, the author has done an excellent job writing this book unlike other books on this topic that are quite dry.