Tagged: book

iPhone Developer’s Cookbook review

When learning a new language/platform/framework, sometimes learning from a book is a good approach. But that depends heavily on picking the 'right' book. What I mean is that the book contains the 'right' amount of content for the reader's skill level. So when I looked for book to learn more about iPhone development, I have something specific in my mind already.

With Apple's original rather restrictive NDA placed on iPhone developers, all the iPhone development books were placed on hold until Apple changed of mind a few months back. One of the book that I received good recommendation from fellow ThoughtWorkers who were also interested in iPhone development was Erica Sudan's iPhone Developer's Cookbook. I bought it earlier this month along with Christmas presents so I can read it during the holiday vacation.

The book is not thick at all, coming just under 340 pages, and took me couple of afternoons to read through. It is written half in traditional cover-to-cover manner and half in 'recipe' manner where developers can find solutions to problem quickly. Perhaps because I've been part of the iPhone SDK program since the beginning and had seen the evolution from the first beta, most of the book content (I'd say 90%) is not new to me. Particularly the sections on table, advanced table, and UI controls are areas that I am already very familiar with after poking around the SDK for over 6 months. I did learn some valuable tips on media and animation, which I've not spent any time on yet.
I'm kind of disappointed by the book because I was hoping I would learn how to create great iPhone app. Particular I was looking for code examples of common application requirements (e.g. how to implement options screen) with in-depth discussion on the limitations imposed by the public API, alternative ways to work around them using legitimate means, as well as undocumented API. I am also hoping to see some mention of unit testing with OCUnit or Google's unit testing framework, profiling using Instrument, and other libraries that would fill in the API gaps. Instead, the book only provides isolated information on each topic and spends to my mind, a disproportion amount of time on undocumented API thus giving it an implicit approval. (On the topic of private/undocumented API, I am in the camp of John Gruber of Daring Fireball)
In the end, I would give this book 3 out of 5 because it provides a lot of valuable information for any one starting out with iPhone development. But it does not provide any insight into building great iPhone application, which I think is sorely missing in this area.

Read and post comments |
Send to a friend

Tech book on Kindle

I met Brian Donahue at ALT.NET in Seattle a couple of months back, and earlier this evening he tweeted that he was curious how well code in PDF would display on the Kindle. So I replied and told him I'll try it out and show him the result.

The process of converting a PDF to Kindle format is very simple. Since I am at my computer I don't need to send the PDF to my Kindle wirelessly, so I emailed the PDF (5.6MB) to my 'free' Kindle email address: alexhung@free.kindle.com. I received back the converted .azw file (2.6MB) from Amazon within a couple of minutes. I copied it to my SD card, popped it into the Kindle, switched it on, and there it was right at the front page. 

So here's a screenshot of the original PDF taken from Preview.app:

And here are how the roughly same page looks on the Kindle:
As you can see the colouring and the code font are gone, obviously, the line-break is off and the download links are gone too but these are to be expected. But overall, I am impressed by the quality of the conversion. The text is properly converted, i.e. not being displayed as a bitmap image. Even the table of content is navigable (it doesn't show up as in the Kindle menu though).
Despite the good quality, I am still not completely convinced the Kindle is a good way to read tech book. Simply because there is always a lot of flipping back and forth when I read tech book, especially reference books, and the Kindle page by page flipping is way too slow. But for regular PDF book, I think the Kindle works just fine.
(Note that I took the photos indoor with flash, at ISO 1600 handheld. Even with image stablizer on, there are still some handshakes.)

Read and post comments |
Send to a friend

Kindle review

My Kindle had finally arrived over a week ago after waiting for over six weeks, and just in time for my weekend trip to Seattle for the ALT.NET open space conference. Since its release, I have plenty of reservation regarding the hardware design, usability, content availability, etc. But I finally convinced myself that it is worth having for a number of reasons. First, I would not need to carry the extra weight of the books with me every week as I travel for work. Further more, the saving in the production and transportation of paper books concerns me as I examine every part of my life of waste and opportunity to streamline.

Thanks to Apple, the unboxing experience of an electronic device is now an experience in its own right! Amazon has obviously studied this effect as the Kindle's packaging is pretty attractive. Not quite at the level of Apple's desirability (e.g. won't make your friends & family go 'wow') but I certainly enjoy unpacking and taking the device out.

The actual size of the KIndle is a little smaller than I imagined, despite all the photos available on the web. The center of gravity is not biased towards the bottom as I anticipated to help holding the device but I have no problem holding the device in one hand. The grippy material on the grey back plate make it easy to keep the device in my hand with minimum force.

Many people has complained about the size and placement of the button on the Kindle. Personally I don't have any problem holding it around the bottom left corner with my left hand. However, I think this may be because I read a lot more magazines than books so I am used to holding the magazine or Kindle in a diagonal way; instead of along the spine of a book, which would make it very easy to hit the Next Page button easily. Similarly I don't have any issue with holding it with my right hand. Where I have issue is with the gigantic buttons are on the side. It is almost impossible to pick up the Kindle without activating one of the buttons by mistake. The wedge shape also make it difficult to pick it up off the table from the right. I have to approach it from the left and even that is not easy because if the Kindle is not in Sleep mode or turned off, 9 times out of 10 I would press either the Prev or Next button. I am hoping that with practice I would be able to pick it up without even thinking.

The other thing that I was not sure about is the inclusion of the keyboard. Many people has commented that why would one want a keyboard when you are reading? Turns out the keyboard is much more useful than one would think. I will come to that later. As for my worry of hitting the keys accidentally, that turns out to be a non-issue. Amazon has designed the keys with enough resistance that it is difficult to press any keys as you hold the Kindle in you hand or carrying it around, but not too stiff to make it difficult to type.

The carrying case that Amazon included with the Kindle is well, functional. Shaped like a folder with elastic band to keep it close, it has no mechanism to retain the Kindle when the case is opened. That means the only safe way to use the case is to carry the Kindle around, is not keep it in the case as you read. My suggestion would be to get a third party case. I chose the Kindle Slip Case from WaterField Design in San Francisco.

What impressed me most about the Kindle is the software and the UI design. As I explored it throughout last week, I noticed many small nice touches which added to the reading experience. First, bookmarking a page involves scrolling to the top and click on the corner of the page, e.g. dog earing the page! Then the ability to highlight text or annotate means for the first time in my life, I actually do both when I read. The lookup function with the built-in dictionary also work really well, again allowing me to look up word definition that otherwise I won't perform because I am lazy. This is where the inclusion of the keyboard helps. I would not use any of these function if I have to either a) attach an external keyboard (might as well pick up my iPhone and use that if that is the case), or b) slide a hidden keyboard out, which may upset the balance of the device not to mention weight and reliability. Other UI touches such as showing where a book is stored (Amazon server, the Kindle, or being downloaded), the progress bar showing how far you are in the book, the pseudo-window scroll and click interface, etc. mean I was able to figure out how to the Kindle without reading the user guide.

The only time I need to refer to the user guide was when I tried to figure out how to put text file onto the SD card and read it on the Kindle. After a few failed attempts and re-reading the user guide (on the Kindle!), I realized that I had to put the files in a directory called "documents" on the SD card in order for the Kindle to recognize them. This was not obvious in the user guide and some one with less patient or deductive logic may not be able to figure this one out!

One feature that I can see huge potential but have not yet tried myself is the ability to search through all the books I own, including the ones on Amazon server. I can imagine when I have a few more books in my library and I have to find a reference from one of them but I don't remember which book it is from. Instead of going through all the books that I think the reference would be in, the Kindle would just return all the search results to me probably including from books/magazines/newspapers that I don't even remember having read!

As for battery life, I was able to read throughout the weekend in Seattle and got down to 1/4 charge by the time I got home on Monday. This includes two 5 hours flights, about an hour of reading each evening (with wireless off), and a few browsing sessions of the Kindle Store online. I also put the Kindle into sleep mode, which uses a little more power, instead of switching it off during the weekend. So I think I can easily get a week of reading from the Kindle without recharge.

What about the actual reading experience? The lightweight of the Kindle compares to a real book (I prefer hardcover over paperback) and the lack of need to hold the book to keep the pages open straightaway make reading on the Kindle much simpler and enjoyable. The almost silent page turning button also makes it perfect for reading in bed at night while your partner asleep next to you. The e-ink is very easy on the eyes even on the smallest font size. The grey background does require a little more ambiance lighting to provide good contrast but even my bedside LED lamp is bright enough to not cause eye strain. The other advantage of reading on the Kindle is that because I now have multiple books within one device, I can switch to reading another book quickly without having to either plan which book I also want to read beforehand so I'll have it next to me, or physically put one book down and put another one up.

The one thing that detracts from the Kindle experience is the slow refresh rate of the e-ink. It is not a problem as I read. The page turning/refresh is fast enough to not disrupt the rhythm. But when navigating through the Kindle store or using other more complicated features such as highlighting text, the e-ink refresh rate is a little too slow and would require some patient to wait for a second or two for the screen to update. I think Amazon can mitigate this issue by either moving some of the features from onscreen menu to hard button on the keyboard or provide some keyboard shortcuts for the most used functions.

Other minor annoyance includes inability to organize books into folders on the Kindle, not able to use it on the plane during takeoff and landing because it is an electronic device, and despite the 90,000+ books on Amazon there are still plenty of main stream books missing from the library. Personally I would rather see more newspaper and magazines add to the library to cater for a wider audience.

So would I recommend the Kindle? Not to everyone. If you read enough, e.g. more than a few books a year, or the books you like or the newspaper you read is on the Kindle store, or you travel/commute a lot with books/magazines/newspapers, then the Kindle is definitely worth the investment. Unless you use the Kindle as the primary reading device the high cost of the initial investment may not make sense. But for me, the Kindle definitely worth its weight in, well, all the paper that I will be saving!

Read and post comments |
Send to a friend

Save the paper

When the Amazon first announced the Kindle, I was not that interested. Partly because of its 'retro' design compares to the iPhone, but also because of its high price. However, recently I am getting more interested in getting a Kindle to save me from carrying books on the train every week to work.

One of the big selling points of the Kindle is long battery life and that is mainly because of the use of e-ink. E-ink only uses power when it changes the text, not while the text is displayed. While the contrast level of the e-ink display is fine for displaying text, it is not so good at showing graphics. Text heavy magazine (with some simple graphics) like Time or Reader's Digest would be fine on the Kindle but others such as Entertainment Weekly, which relies fairly heavily on pictures, would not. One solution would be for publishers to provide specially formatted version to Amazon but this would increase costs, which either Amazon has to absorb or pass on to the consumers. Another solution would be for Amazon to convert the full color magazine data to suit the Kindle. Again there would some cost involve and possibly copyright issue due to the nature of modifying content. Perhaps this is the reason I think why there is not more magazines in the Kindle store. Right now there are exactly eight, that's right eight, magazines on the Kindle Magazine store.

However, if Amazon starts providing many more magazines than what they currently offer I would not hesitate to order one tomorrow. I have two magazines that I consume weekly so I am throwing away a fair amount of printed-paper every week. Not to mention the carbon emission 'cost' of the printing process and the transportation. I would love to have New Scientist and Autosport (both of them are available on Amazon as regular magazine subscriptions) delivered wirelessly to me because while using the Amazon Kindle to read books would definitely save paper as well as fuel to transport the heavy books, I think the most saving would actually come from reading periodicals. This is because even though books use a lot of paper we generally keep them around after we finish. On the other hand, we tend to treat magazines as consumables and throw them away as soon as we are done with them or when the next weekly edition arrives.

So just like the high-definition DVD battle or the digital music distribution, it would be content that decides the fate of the Kindle. Amazon has already won the e-book battle against Sony because of its much larger book library (more than 100,000 vs. 20,000) despite having a less beautiful hardware design. But to win over the general consumers Amazon would have to make much more content be available so that people would worry about what is not available on the Kindle store than think about what is today.

Read and post comments |
Send to a friend