Monday, 3 October 2011

eBookTreasures II


OK, here's the second post about eBookTreasures. In the first we covered the background, today it's technology and UI.

Prior to 1.1 iBooks had done a similar job to most epub readers, but then the iBooks team saw the writing on the wall and adopted many of the epub3 standards - HTML5, CSS, Javascript as well as fixed-width books.

Fixed-width was the starting point. You can embed images, pretty large ones if you want, in regular epubs, but they don't fill the screen. You don't feel like you're reading a book. The device acts as a frame, and then the app acts as a frame within that. There's no suspension of disbelief there. Fixed-width changed all that. Books can butt up against the iPad bezel and suddenly you're leafing through a manuscript, not reading an ebook. And with the iPad's 2m pixel ceiling for image size, you have plenty of headroom to drop in nice high-resolution images. That got us started.

We then wanted a very stripped down UI, that let the book just be the book, but we wanted some subtlety too. Discrete arrow buttons bring up custom functionality. We animated these using jQuery classes, and then wrote some Javascript to do things like flip Leonardo da Vinci's pages the right way round, play MP3 audio files and do some image swapping.

The latter is important, as it swaps the page bitmap for a blank page bitmap (custom-coloured for the book it's placed in) with system text embedded in it. This allows for the text to be searched, taking advantage not only of iBooks rather nice search function, but also it's highlighting and dictionary functionality.

For these generic pages, as well as the introductory pages, we used CSS to allow for easy customisation. Our objective here is to build a template or engine that will give us the chance to build new books very quickly and easily.

This is a key differentiator in what we are doing. We didn't want to build a big "bet the farm" type app model where huge development costs go in to building each book. This is more like a large number of smaller bets, meaning it's easier to get partners on board, easier to scale and easier to fine tune.

The HTML5 capabilities of epub3 are allowing us to easily embed video, which will be a feature of a forthcoming title, and getting to grips with all these capabilities puts us in a good place for working on more complex ebook projects in the future should we want to.

For all of this we had to test against lower-end devices like iPod Touch and iPhone 3G, which operate with much less RAM and an older GPU. We were really concerned about performance on these devices. In the end, Apple advice was to go for quality, so we did (using the high-res files for example) and the low end devices cope OK. An iPad2 gives a snappier experience than an iPad1 for example, but the latter is plenty usable.

Overall I guess we built up to 400 test epubs of various sorts over a 3-4 month period. Different bitmaps, different code, breaking changes as Apple released new iBooks builds, UI tweaks, you name it. Ironically though, the technology set we are using is the lowest we've used in many years. This hasn't been a project with huge technology hurdles, just UX and marketing ones.

One of the things we have our eye on is the Kindle approach to facsimiles. So far we've seen Kindle Print Replica appear out of the ooze, but this primitive life form is nothing but a PDF in a DRM wrapper. Plenty of scope for evolution there.

Next time I'll look at the business model and the barriers to adoption.

No comments: