Tag Archives: kindle


WikiPub: WikiLeaks on your eBook reader

I read. I read a lot. I do not nec­es­sar­ily read as fast as the folks that can power through a book in a week­end, but I get a lot of enjoy­ment out of it nonethe­less. Part of this read­ing occurs dur­ing my daily com­mute.

Recently, I man­aged to grab a copy of the WikiLeaks cable­gate archive. It’s pretty easy if you know where to look and know how to oper­ate BitTorrent. I wanted to read the cables in the morn­ings, but ran into a few snags. When down­load­ing a mir­ror of the cables, you get a whole bunch of HTML files that are for­mat­ted for a desk­top browser. I do most of my read­ing on the iPhone and only occa­sion­ally switch to the iPad (if I’m not jug­gling a travel mug, mes­sen­ger bag, and tran­sit pass). It was easy enough to load the zip into GoodReader, extract the raw HTML, and browse it within that app, but it really wasn’t a good read­ing expe­ri­ence on the small screen due to for­mat­ting.

What I really wanted was some­thing I could load into iBooks. I wanted some­thing I could book­mark, under­line, and search that was nicely for­mat­ted and word-wrapped for the screen. I wanted WikiLeaks as an ePub file. That’s where this project comes in.

Read more and get the down­load on the project page...

Posted in: Code Projects

One week with the iPad

Please bear with me as I type this review directly on the iPad — on Pages to be copied into WordPress — while reclin­ing on the sofa. Although I have used it in a num­ber of other ways, my intent right now is to get a good feel for using it in this par­tic­u­lar real-life sce­nario. (The result of this test should be toward the end of this report.)

First of all, let me get the obvi­ous out of the way. OMG! It doesn’t mul­ti­task! It’s just a giant iPod touch! The bezel is huge! There’s no key­board! What good is a machine in-between a phone and a lap­top? Netbooks are more use­ful! So these are the var­i­ous crit­i­cisms out there about the iPad — well, besides the dumb name. None of them really mat­ter to me. The size is just fine. In fact, in post-iPad times, my iPhone feels ludi­crously tiny — almost unus­ably so. The mul­ti­task­ing becomes less impor­tant when the inter­face is designed to only show one app at a time (with one excep­tion — I *really* miss not being able to run Pandora in the back­ground, bit I hear that will be fixed later this year). I find that I now only use my lap­top for cre­ative endeav­ors: pro­gram­ming, edit­ing graph­ics, typ­ing long-form text (except for just now), down­load­ing large files, reverse engi­neer­ing, net­work mon­i­tor­ing, and so on. The iPad cov­ers every­thing else now: access­ing Google reader, email, Twitter, con­trol­ling other machines (via SSH, VNC, and VPN), watch­ing video pod­casts (some­thing I never even did on other machines), web brows­ing, and so on.

Lots of peo­ple are ask­ing “what’s an iPad FOR?” With the iPhone, it was pretty obvi­ous: cell­phone, iPod, and Internet com­mu­ni­ca­tor. With the iPad, the answer is less clear. In fact, it’s almost akin to ask­ing what your lap­top or desk­top com­puter is for. My answer may be dif­fer­ent from yours, which may be dif­fer­ent from some­one else’s. My main (orig­i­nal) use-case for the iPad is as a Kindle replace­ment, with a few casual games, video, and audio thrown into the mix. Getting the Kindle last year, for me, was a huge game-changer. I greatly enjoy read­ing, but have never done as much as I wanted to because many of the books I want to read are huge (see also: Anathem). Carrying such books around has been too much of a pain, so I only got to read for short spells at home. The Kindle allowed me to carry such books around in my tiny satchel with­out a sec­ond thought about size and weight. My intent for the iPad was to be a bet­ter Kindle. You see, the Kindle is great for straight­for­ward lin­ear texts like nov­els, but any sort of skim­ming, brows­ing, or cross-referencing (e.g. tech­ni­cal doc­u­men­ta­tion) is not speedy enough to be use­ful on Amazon’s device. For more of my iPad vs. Kindle thoughts, see my pre­vi­ous arti­cle on the iPad, Kindle, and DRM.

I can hap­pily say that the iPad exceeds my expec­ta­tions as an ebook reader. My ini­tial worry was that the back­lit LCD screen, com­pared to the Kindle’s e-ink dis­play, would be too harsh on the eyes over long peri­ods of time. This turned out to not be the case. It is just fine, espe­cially when you adjust the screen con­trast (which is avail­able directly in the reader appli­ca­tion). Admittedly, I no longer have the nos­tal­gic “read­ing under the cov­ers with a flash­light” that I had with the Kindle’s screen, but I think I can live with that.

I find that I can prop it up in the kitchen and watch short video pod­casts while prep­ping din­ner. I never really did any­thing like that before and am glad to be doing it now. I have a big back­log of TED Talks videos that my com­puter has been col­lect­ing, but which I have just never got­ten around to watch­ing. The iPhone felt too small and the lap­top just did not feel like the right place — I kept want­ing to mul­ti­task and would stop pay­ing atten­tion to the video.

The games are great, Netflix stream­ing is amaz­ing, and I found I could (very awk­wardly) build up a spread­sheet a few nights ago for Kim’s com­pany. Building the spread­sheet was a lit­tle too awk­ward to be pro­duc­tive, but I can cer­tainly pic­ture a sce­nario (prob­a­bly not in my life, but in someone’s) in which a com­plex spread­sheet is imported and then spe­cific num­bers are plugged into it in the field. Writing long-form text really is quite com­fort­able, I now real­ize. The key­board in land­scape mode is just a tad smaller than most lap­top key­boards and (with the assist of auto-correction) I can touch-type pretty darn fast.

Now, the bad. The iPad does not feel like its own minia­ture stand-alone com­puter. It feels like it *should be* and is really try­ing hard to do so, but it really can­not be used with­out being fre­quently teth­ered to a desk­top or lap­top com­puter. I don’t mean teth­ered in the cool wire­less con­nec­tiv­ity way that you can tether a lap­top to a cell­phone to get wire­less Internet. Nor do I mean teth­er­ing in the way that you can pair wire­less head­phones to a com­puter or media player and walk around the room. I mean teth­er­ing in a bad way, as in the only use­ful way to get the files you have edited in and out of the iPad is to hook up the USB cable. Not only that, but before you can even use it, it has that famil­iar iPhone “con­nect to iTunes” graphic to acti­vate — so for­get being able to send one to Mom or Grandma as a replace­ment for a pri­mary com­puter. It needs a pri­mary com­puter to turn it on for the first time.

Getting files in and out of the iPad is awk­ward at best. Some apps do sync­ing “to the cloud” and sync against servers on the inter­net. For instance, Evernote and the Amazon Kindle app do this. This cer­tainly seems the eas­i­est route, but very few apps sup­port this kind of sync­ing because it typ­i­cally requires a big infra­struc­ture behind the scenes. Other apps require you to run a lit­tle server on your desk­top or lap­top. When you launch the iPad app, it sees the server and let’s you sync against it. For me, this works out extremely well. It allows me to sync against *any* local machine run­ning the server app. Examples of this include Comic Zeal, iAn­no­tate (a PDF reader), and 1Password. Many oth­ers require you to use an awk­ward fea­ture built into iTunes that lets you drag-and-drop files into and out of a nearly hid­den bit of the iTunes win­dow. They then trans­fer in and out of your iPad when you sync it to the com­puter. This requires you to use only the one machine you are sync­ing your iPad appli­ca­tions against to trans­fer files. You can use no other machine on the planet to copy files into and out of the iPad for appli­ca­tions that syn­chro­nize only via iTunes. This includes iBooks, Numbers, and Pages. iBooks is a lit­tle unique in that you can buy books from the iTunes store (how I imag­ine most peo­ple are fill­ing up their book­shelf), but there is no easy way to trans­fer in a per­son­ally cre­ated epub book or inde­pen­dently pur­chased one (e.g. from O’Reilly) with­out teth­er­ing to your main iTunes machine. Now, some files you can play the email game with. Mail.app will detect word pro­cess­ing doc­u­ments and spread­sheets and lets you import them into Pages and Numbers. Those two apps will even let you email doc­u­ments (under 10 megs in size), which I guess is a sort of export. It even sort of works, but feels more like the old-school “who has the lat­est ver­sion of this doc­u­ment?” game from back when LANs were rare and you kept around 20 ver­sions of the same doc­u­ment with names like report.doc, report2.doc, report2-latest.doc, report2-latest-newer.doc, report2-final.doc, report2-final2.doc, and report2-final-latest.doc. Things get out of hand if you don’t man­u­ally keep track of doc­u­ment revi­sions. This email scheme does not work at all with epub files. They just won’t open iBooks. There is no way to pur­chase a tech­ni­cal book directly from O’Reilly and down­load, email, or oth­er­wise get it into the iPad with­out sync­ing against your one-and-only iTunes.

Something tells me that in the full­ness of time, these wrin­kles will get ironed out by enter­pris­ing devel­op­ers and/or by Apple itself. Although I have used up some big para­graphs describ­ing them, and they are awk­ward when they appear, the truth is that these com­plaints arise very rarely. They are a minor blem­ish on an over­all expe­ri­ence that is absolutely fan­tas­tic. I started out in the “there is pos­i­tively no place for that thing in my life” camp when the iPad was first announced and, in recent weeks, migrated through “that’s kind of a cool idea” to “I use it all the time.” Is it the right device for you? I can’t answer that any more than I can say which lap­top or desk­top is best for you. That is a deci­sion you must make for your­self.

P.S. It looks like i can­not copy from Pages and paste into the WordPress iPad client. For some rea­son, I just can­not get the paste bub­ble to pop up. I can paste it just fine into the web-based edi­tor, though. It’s not as speedy as the native app, but also not as buggy.

Posted in: Dear Diary Gadgets

Migrating from Kindle to iPad: An Illustrated DRM Primer

Over the week­end I made a tweet that sev­eral peo­ple asked about:

Basically, they wanted to know how to con­vert DRM pro­tected Kindle books over to ePub books that will work on the iPad.

I love the fact that Amazon was able to release a Kindle app for the iPad on the very first day, but in a side-by-side com­par­i­son, I found Apple’s iBooks to be a lit­tle more use­ful to me. It’s a seri­ous set of trade-offs. On the one hand, the Kindle app syn­chro­nizes with the cloud and remem­bers what page I last viewed. If I pick up my actual Kindle or use the Kindle app on the iPhone, then I can resume exactly where I was. There is no equiv­a­lent in iBooks. On the other hand, the Kindle app has no dic­tio­nary, whereas the iBooks dic­tio­nary is stream­lined and non-obtrusive. Weighing the two fea­tures, the dic­tio­nary is more impor­tant to me. I can man­u­ally fig­ure out where I am in a book if I switch devices, but I often run into words I do not know — for instance “blue­stock­ing” (a deroga­tory term to describe an intel­li­gent or lit­er­ary woman) — mean­ing I have to jump out of the Kindle app, load up a dic­tio­nary app, wait for it to fin­ish load­ing, type in the word, then switch back to the Kindle app. It is just so much eas­ier to tap the word and get a def­i­n­i­tion in a pop-up bub­ble.

Given this, I started con­vert­ing my Kindle books to ePub for­mat. This is a two step process. For the folks that just want to do it and fig­ure out the details on their own, those steps are:

  • Use the “dedrm” Python script to strip the DRM from the Kindle *.azw file
  • Use Calibre to con­vert from azw (it’s really MOBI) to ePub

Strip the DRM from the Kindle file

This step is the most dif­fi­cult and takes a lit­tle Terminal mojo. The fol­low­ing direc­tions assume you are run­ning on a Mac (I am sure Python exists for Windows, but you’re on your own if you have a Microsoft box) and that you can do some basic nav­i­ga­tion around the Terminal com­mand prompt.

The Kindle AZW files are really just MOBI (a stan­dard eBook for­mat) with some spe­cial DRM applied. The DRM is a sym­met­ric cipher, mean­ing it needs a key­word to encrypt and the same key­word to decrypt. That key­word is just a reshuf­fling of your Kindle’s ser­ial num­ber.

First, you will need your Kindle, with the pur­chased book down­loaded onto it. Next, you will need a set of Python scripts that go by the name dedrm (includ­ing kindlepid.py, mobidedrm.py, and monidedrm2.py). I am not a lawyer, so I do not know if I can pro­vide a direct down­load link here. I assume this stuff is cov­ered under Fair Use, but I am going to go the con­ser­v­a­tive route and just tell you to do a Google search.

Plug in your Kindle, and copy the AZW file out of its /Documents folder and into the same folder as your Python scripts. To get the encryp­tion key that Amazon uses to encrypt your eBooks, cd to the direc­tory con­tain­ing the Python scripts and use this com­mand, sub­sti­tut­ing the B12345678 with your actual Kindle ser­ial num­ber:

python ./kindlepid.py B12345678

This should come back with a result along the lines of:

Mobipocked PID for Kindle serial# B12345678 is 1Q4Y2VZ*RE

Save that mix of num­bers, let­ters, and aster­isk. That’s the key that Amazon uses to encrypt all eBooks for your spe­cific Kindle.

Next, use that key to decrypt the book. You’re actu­ally going to have to do this twice. One will work and one will not (and it will be dif­fi­cult to know which one worked until you load it in a viewer in the next step). You will need to run the dedrm v0.01 and dedrm 0.02 com­mands. They dif­fer slightly in the com­pres­sion method used, but the wrong com­pres­sion adds some garbage and bad meta­data to your book. Be sure to replace the 1Q4Y2VZ*RE with your key derived from the above com­mand. Also, leave those single-quotes in there.

python ./mobidedrm.py mybook.azw mybook1.mobi '1Q4Y2VZ*RE'

python ./mobidedrm2.py mybook.azw mybook2.mobi '1Q4Y2VZ*RE'

Either mybook1.mobi or mybook2.mobi should be the cor­rect decrypted ver­sion of your eBook. The next step is to fig­ure out which one is the good one and to con­vert it to ePub.

Convert AZW/MOBI to ePub

Import the first MOBI file into Calibre and use the “View” icon in the tool­bar to see it in the viewer. Verify that this is a non-broken doc­u­ment.

You first want to bring up the table of con­tents by using the icon in the tool­bar on the left. Click around in the table of con­tents to ver­ify that chap­ter mark­ers really do line up with the chap­ter text. Skim through a few dozen pages look­ing for weird HTML or XML frag­ments (angle brack­ets and equal signs that look out of place).

If every­thing looks good, you imported the good doc­u­ment. If things look funky, close the viewer, delete the doc­u­ment from Calibre, then import the other one.

Once you have the good doc­u­ment imported, select it and click on the “Convert E-Books” icon in the tool­bar. Be sure to change the out­put for­mat to EPUB. You can cus­tomize other options as you see fit. Click “OK” to con­vert.

Once con­verted, you can find the file in your Calibre folder or you can use the export func­tion­al­ity to save it to disk.

Drag the result­ing *.epub file into the Books sec­tion of iTunes and you’re set. The book you pur­chased on Amazon can now be read in Apple’s iBooks appli­ca­tion.

Posted in: Books Gadgets

Kindle versus paper: a pictorial

I have had a Kindle for a few months now and really enjoy it. I have been read­ing like I’ve never read before! The size and con­ve­nience are great and, for many texts, far out­weighs the longevity and space require­ments of paper books (even though I love hav­ing shelves and shelves of book spines to look at, like tro­phies of con­quered knowl­edge).  Really, all I need are the words, regard­less of for­mat.

That being said, there are some paper books that are vir­tu­ally required to own. If it pleases the court, I would like to intro­duce Exhibit A. Pictured next to the Kindle is the Hitchhiker’s omnibus of all 5 books in the “tril­ogy,” plus a short story.


These books should be required read­ing for all humans on the planet, and I am quite proud to have a dead-tree edi­tion.  I re-read (most of) the series a few weeks ago on the Kindle.  Unfortunately, slightly over one-fifth of it is cur­rently unavail­able for the Kindle! This is where my prob­lem lies. Given the pic­ture in Exhibit A, which mainly focuses on the front sur­faces, you’d think they were both about the same. I would now like to intro­duce Exhibit B.


The item on the left does not com­fort­ably fit in my mes­sen­ger bag, whereas the item on the right (which con­tains 4/5 of the item on the left) is not much thicker than the front cover. Admittedly, I cheated a bit and took the Kindle out of its pro­tec­tive cover for this shot, so it is really about a cen­time­ter thicker, but it still fits com­fort­ably in my bag.  And holds thou­sands of books. In fact, accord­ing to my records, I own 523 books (some of which are pic­tured below), and the Kindle holds roughly 6 and a half times that. That’s a lot of books to be car­ry­ing around!


But get­ting back to my point, I don’t think I will be re-reading the final Hitchhiker’s book, since I can­not carry it com­fort­ably around.

Oh, and one last thing. It used to be that I would fre­quently spend money on books that looked inter­est­ing at the time, in the hopes that I would read them — and then they would sit, for­got­ten, on the shelves. I basi­cally still do the same, but now I just col­lect sam­ple free first chap­ters. This is a lot bet­ter on the pock­et­book and the col­lec­tion acts as a wish­list of sorts. Currently at the top of the queue (and I think I’ll buy it later this evening I bought it between draft­ing and pub­lish­ing this post) is Spook: Science Tackles the Afterlife by Mary Roach (who also wrote Stiff: The Curious Lives of Human Cadavers). Although by look­ing at the table of con­tents, I feel as if I have been intro­duced to a lot of Spook via episodes of WNYC’s Radio Lab, it still looks like a worth­while read.

Posted in: Books Dear Diary Gadgets Pictures

The hidden cost of the Kindle: computing glasses

So it turns out that there is a hid­den cost to the Amazon Kindle. I have been read­ing quite a lot more in the past few months. A typ­i­cal week­day rou­tine might have been star­ing at com­puter screens all day at work, com­ing home, doing a few chores, help­ing out with din­ner, then watch­ing a tele­vi­sion show or two, per­haps a movie, before bed. Recently, this has changed a bit: the tele­vi­sion is often swapped for read­ing. The dif­fer­ence? Distance focus ver­sus close-up focus.

I have always had pretty decent eye­sight, but have noticed a bit more fatigue and some annoy­ing floaters in recent weeks. An optometrist appoint­ment later, I find that my vision is a bit off (not much, just half a tick far­sighted) and that the floaters are noth­ing major, but I am prob­a­bly a touch more aware of them because of the fatigue. The rec­om­men­da­tion is that I would need com­put­ing glasses, as things will only get grad­u­ally worse from here. Computing glasses. I guess they are not called read­ing glasses any­more.

I put off pick­ing glasses until Monday. I’ve lived this long with­out them, so can sur­vive a few more days, espe­cially given the tiny amount the vision is off. After all, Kim, being the fash­ion designer, can do a much bet­ter job of pick­ing out frames than I.

Posted in: Books Dear Diary

The little details, like hyphens and em-dashes

As you may or may not know, I got myself a Kindle a few months back. To be more spe­cific, it was the Kindle DX — a bit more expen­sive, but the big­ger screen and native PDF sup­port was more than worth it in my case. My thought at the time was that it would mainly be used for tech­ni­cal doc­u­ments. A large part of what I do is read­ing several-thousand-page chip datasheets, review­ing prod­uct doc­u­men­ta­tion, and read­ing man­u­als for new tech­nolo­gies. I am a big fan of the O’Reilly Rough-Cuts series of books, which might be thought of as books in beta form. With Rough-Cuts, books about extremely new tech­nolo­gies get writ­ten and pub­lished elec­tron­i­cally, then as the tech­nol­ogy gets honed, so do the books. Revisions are fre­quent. You have access to those revi­sions as they occur as well as the final elec­tronic ver­sion, and have an option to get the print ver­sion at a reduced price. I find these cutting-edge books invalu­able in a field that changes all the time. Although a lot of the mate­r­ial is avail­able from a vari­ety of web­sites, it is often worth the price to have it con­sol­i­dated in one PDF.

While I have read quite a lot of tech­ni­cal infor­ma­tion, I find, sur­pris­ingly, that the vast major­ity of my Kindle read­ing is for plea­sure. I have been read­ing (and re-reading books I last read years ago) a lot of fic­tion and non-fiction that is in no way tech­ni­cal. Although sur­pris­ing, it is in no way dis­agree­able. I find that I am read­ing more, and this is a good thing.

As pos­i­tive as my Kindle expe­ri­ences have been, there is one minor nit-picky pet peeve about some of the con­tent. I ranted about this on Twitter last night and expanded upon it a lit­tle bit in a Facebook response, but fig­ured I would share it for all right here. Although the major­ity of mod­ern con­tent — that is, con­tent pub­lished in the last year or two — seems to have been trans­lated directly from a dig­i­tal source doc­u­ment into a dig­i­tal ebook file, older titles (and by older, I mean books even as recent as the late ‘90s) feel as if they have gone through scan­ning, imag­ing, and opti­cal char­ac­ter recog­ni­tion to make dig­i­tal ebooks out of print source mate­r­ial. Although there have been a num­ber of exam­ples, two recent sets of annoy­ances spring to mind:

* In So Long and Thanks for All the Fish, one of the char­ac­ters has an unusual name, Fenchurch to be exact. I assume this is not a word that appears in the typ­i­cal hyphen­ation dic­tio­nary. In a few ran­dom places in the ebook, the name is writ­ten as Fen-church. It feels as if the name was split across a line-break in the print edi­tion, but the OCR that scans the book into a dig­i­tal file could not tell a hyphen­ated word span­ning two lines from a com­pound word span­ning two lines, because it wasn’t in the dic­tio­nary so decided it was a com­pound word.

* In Starship Titanic, the em-dashes (or, rather, the hap­haz­ard trans­po­si­tions from em-dash into hyphen) are really annoy­ing. I am only a few chap­ters in to the book and already the swiz­zling of em-dashes with hyphens is start­ing to drive me crazy. There will be par­en­thet­i­cal thoughts that start with an em-dash, but end with a hyphen, or vice-versa. So you would be read­ing a sen­tence and get an inter­rup­tion — like this-and not real­ize it just ended because the sec­ond em-dash is printed as a hyphen.

These are rel­a­tively minor annoy­ances, but stand out to my eyes. Others may skim by with­out notic­ing. These irri­ta­tions aside, I am quite happy with the Kindle plat­form as a whole.

Posted in: Books

Netninja Mobile, now with sudoku

A lit­tle over two years ago, back when the iPhone SDK con­sisted of “here, kid, here’s a text edi­tor, now go away and make your­self a nice lit­tle web page, and quit both­erin’ me,” I quickly hacked together a lit­tle web con­trol panel and called it Phonemarks. It ran, and con­tin­ues to run in some form or another, at http://m.netninja.com/. It has not been ter­ri­bly use­ful in recent times. There are now native apps. You can put book­marks to pages on your home screen. Through the magic of Foxmarks, I can keep my book­marks in sync between Firefox (all the places I have Firefox installed), Safari, and (by exten­sion) the iPhone. My Phonemarks project has all but died due to lack of use­ful­ness and lack of inter­est. The only thing I find use­ful about the page these days is the search box. It allows for quick search­ing of Google, Google Images, Wikipedia, IMDB, dictionary.com, thesaurus.com, Amazon, Powells, and Netflix. Adding a new search site is extremely easy. This sim­ple lit­tle form has saved a ton of time.

Veering off in a seem­ingly dif­fer­ent direc­tion for a bit: I enjoy sudoku. I enjoy work­ing on sudoku puz­zles with pen, paper, and my brain — with­out the aid of pro­grams to do the grunt-work for you. Increasingly, I can solve mod­er­ate and even a few dif­fi­cult puz­zles doing this grunt-work entirely in my head, but even when I have to do it, I find it sim­ple and repet­i­tive enough to be a sort of exer­cise in zen relax­ation. Yeah, it’s weird to talk about a num­ber puz­zle like that. Quite often I will go to the New York Times daily hard puz­zle and the USA Today daily puz­zle and copy them down to a blank Hipster PDA sudoku tem­plate for “offline” “low-fi” play. Because one of those pages is Java and the other is Flash, it means I have to be sit­ting at a desk­top browser to do this. Access from the iPhone does not work.

Veering off in yet a dif­fer­ent per­pen­dic­u­lar for a bit: I reverse engi­neered the data pro­to­col for both sudoku sites ages ago. I took lots of notes and wrote pseudocode, but never got around to writ­ing actual code. A few months ago, I cut my teeth on Adobe Flex pro­gram­ming by finally imple­ment­ing a data scraper app in Flex. Flex is a nice lan­guage. For a sand­boxed GUI front end. For apps that don’t inte­grate well into the native OS. It’s like Java for the Web 2.0 world and allows you to trade in all of the prob­lems with Java for an entirely new set of prob­lems. Don’t even talk to me about vari­able scop­ing. My sudoku scraper app is not avail­able for down­load, as it only works in the debug­ger due to some cross-site sand­box­ing issues. A few weeks ago, I rewrote that scraper in PHP and attached it to my iPhone home­page.

Just today (finally tying together the above asides — see, I was going some­where with those), I made a home­page for the Kindle sim­i­lar to my iPhone home­page. Some things could be left out of the search form — for instance, Google, Wikipedia, and dic­tio­nary searches are avail­able from just about every­where in the Kindle OS, so are redun­dant enough to get in the way. IMDB searches are use­ful (but would be more use­ful if they offered a mobile ver­sion of their site; their site is dog-slow on the Kindle’s browser). Sudoku, of course, is in there.

netninja-home-iphone netninja-home-kindle

So far my only com­plaint with the Kindle web browser is that, while some parts of CSS are avail­able, other (seem­ingly sim­pler) parts are not. There is no mono­spaced font. There is no non-breaking space. There is no <pre> tag. I tried to lay out the sudoku grid as plain­text instead of a table to shave a few dozen (or hun­dred?) mil­lisec­onds off of the page ren­der­ing time. Due to the nature of how I’d be using it, I care more about the speed of the page and the data con­tained in it than I care about a pixel-perfect fancy lay­out. But oddly, table CSS such as the right and bot­tom bor­ders of the indi­vid­ual table data ele­ments work fine but fea­tures I con­sider to be more sim­ple, like mono­spaced plain­text, do not work at all. Javascript some­times works, but often does not, so I will have to rework my Kindle/iPhone autode­tec­tor to work in PHP or mod_rewrite.

Posted in: Code iPhone Mobile

1984 goes down the Memory Hole

I’ll be blog­ging about the great time I had at ARGfest soon, but this par­tic­u­lar bit of news was just too laced with irony to pass up...

I do not know if you have read the biggest piece of irony in recent (or per­haps ever) tech news but in case you have not, let me sum­ma­rize. The Amazon Kindle is, arguably, one of the most pop­u­lar ebook read­ers out there. Ebooks may not be for every­body, and even for the peo­ple who embrace them, they may not be for all books (I myself think they are great for tech books/paper, pulpy nov­els, and timely things like news­pa­pers and mag­a­zines, but would not buy some­thing last­ing), but they’re here. They’re prob­a­bly here to stay. The com­pelling fea­ture of Amazon’s Kindle is its abil­ity to buy and down­load books on the go. Each Kindle has what is effec­tively a lit­tle cell­phone inside. Each Kindle has free wire­less data ser­vice. This means that from vir­tu­ally any­where (in the US with cell­phone recep­tion) you can instantly pur­chase and down­load a book.

Up until now, every­one had assumed that cell­phone con­nec­tion was (more-or-less) one way, with all com­mu­ni­ca­tions being sourced from the Kindle. You use it to browse books, down­load them. When you read a book, the last page you were sit­ting on gets uploaded by the Kindle (so that if you have mul­ti­ple Kindles or a Kindle and and iPhone, it remem­bers your place.) Every night in the wee hours, your news­pa­per sub­scrip­tions get “pushed” to your Kindle, but my under­stand­ing is that it is less of Amazon push­ing it to your Kindle and more like your Kindle occa­sion­ally ask­ing “is there any­thing new for me to down­load?”

Given this, imag­ine everyone’s sur­prise when the fol­low­ing sce­nario occurs. People pur­chased Orwell’s 1984 (and Animal Farm, but we’re tak­ing 19eff­ing84 here) on the Kindle. It gets down­loaded and peo­ple start read­ing. Sometime later, there is a mys­te­ri­ous refund receipt email from Amazon for the cost of the book. And some­time after that, peo­ple turn on their Kindle to find that 1984 no longer exists on their Kindle. It has been thrown down the Memory Hole! What hap­pened was the pub­lisher dis­cov­ered they did not actu­ally have dig­i­tal dis­tri­b­u­tion rights for the work, only print dis­tri­b­u­tion. So Amazon went out and deleted it from everyone’s Kindle. They say this occur­rence is rare, but it’s a bit unset­tling that there is even a frame­work in place for this to be a pos­si­bil­ity! As Gizmodo says “Once I buy a book from Barnes & Noble, I never have to worry about them break­ing into my house and tak­ing it back, leav­ing me a pile of sin­gles on my night­stand.”

Given this, I am slightly less enthused about the Kindle, but I have done my research on the DRM and capa­bil­i­ties. Make Magazine’s blog has instruc­tions for get­ting 1984 on your Kindle. It uses a loop­hole in Australian copy­right law, which may or may not be legal in the US. That fixes this one par­tic­u­lar sit­u­a­tion. But the Kindle DRM in gen­eral is rel­a­tively sim­ple, plus — DRM aside — it is even sim­pler to backup your own books. People call the Kindle “the iPhone of books” and I see par­al­lels in not just the design and usage, but in the DRM. Purchases from the iTunes Store, back when it had DRM, could have the DRM eas­ily stripped from them. I see no dif­fer­ence in the Kindle. Copyright law is a bit unclear on the legal­ity here. The DMCA has a fair-use clause that says things you can strip the DRM from you pur­chase under cer­tain con­di­tions, but I do not believe that has actu­ally been tested in court yet, espe­cially not for Kindle pur­chases, and espe­cially not given this recent devel­op­ment.

Admittedly, “sim­ple” for me does mean invok­ing a Python script from a com­mand line, which can be scary for many peo­ple. As they say: your mileage may vary. I am sure that at some point, an enter­pris­ing indi­vid­ual will make a sim­ple one-click graph­i­cal tool for doing the same. DRM never lasts long.

Posted in: Books

Comments from all over (Virtual Kindle Style)

When the blog was the only out­let for typed thoughts and shared com­ments, every­thing got posted here (or, tech­ni­call, over at LiveJournal, as that was my blog long, long before I moved it here.) Now that we have Twitter and Facebook and what­not, those thoughts get scat­tered through­out the inter­nets. In an effort to graft some of them back to net­ninja, I will attempt to sum­ma­rize and/or expand upon some inter­est­ing recent tweets, com­ments on oth­ers’ blogs, and what­not.


I recently ordered a Kindle DX from Amazon. That and the fancy new iPhone 3GS were at the top of my gad­get wish list, but with AT&T’s “you pay an extra $200 because you are an early adopter” tax, I fig­ure my exist­ing iPhone 3G is fine for the 6 months it takes for that tax to become zero. In fact, 6 months after that, the new-new iPhone is likely to be released. If I am forc­ing myself to wait 6 months, I may as well wait another to get the good stuff.

So any­way, back to the Kindle. I have a grow­ing col­lec­tion of PDF books, mainly due to O’Reilly’s Rough Cuts series of tech­ni­cal books. And since the entirety of out­put on Mac OS X is PDF under the hood, it is an even more com­pelling file for­mat. At work, I have chip datasheets to read and end user doc­u­men­ta­tion to edit and approve, all in PDF for­mat. A few of the datasheets are pass­word pro­tected, which the Kindle does not do, but Elcomsoft makes a handy lit­tle app to deal with that.

The whole thing is a lit­tle weird. A year ago, even six months ago, I was very much against the Kindle. I am still a lit­tle on the fence regard­ing DRM and the inabil­ity to lend books to friends, but the PDF sup­port of the DX has tem­pered that a lot. It does read other ebook for­mats, unen­cum­bered by dig­i­tal restric­tions, and there are a num­ber of other stores (obvi­ously, not as inte­grated into the Kindle’s sys­tem to instantly buy and down­load books) with­out DRM. But over­all, it is the size and con­ve­nience that won me over. For exam­ple, I would read much more P.G. Wodehouse if I did not have to carry around the 700 page tome I have (cast­ing aside the awk­ward real­ity that it is not one of the titles cur­rently offered in Kindle for­mat yet.)

Some titles are unlikely to make good Kindle books. For instance, I can­not see read­ing some­thing as dense as Hofstadter’s Gödel, Escher, Bach on a Kindle. Certain titles are impor­tant enough to me that I will really want a paper edi­tion. For the vast major­ity of plea­sure read­ing, though, I can totally see using the Kindle. For the tech­ni­cal top­ics that are so cutting-edge as to no have paper books yet, there is no choice but dig­i­tal text. Long, long, ago I used to read “pulp” scifi and mys­tery mag­a­zines. Buying them at book­stores was a lit­tle incon­ve­nient, as they were often dif­fi­cult to find. The sub­scrip­tion thing does not always work for me for mag­a­zines of any kind — they pile up unread. If I actively pur­chase a sin­gle issue, the odds of it get­ting read are much, much higher than if I pas­sively receive issues through a sub­scrip­tion. I am not sure I under­stand it, but have read that there is a very sim­i­lar psy­cho­log­i­cal effect with going to the gym — I guess you value the ses­sions more and are more likely to use them if you pay for them indi­vid­u­ally ver­sus hav­ing an unlim­ited monthly mem­ber­ship. The unlim­ited mem­ber­ship makes more finan­cial sense, but does not psy­cho­log­i­cally work for some peo­ple. Anyway, some of those pulp mag­a­zines (Asimov, Analog, Hitchcock) are still around and avail­able on the Kindle and I expect to pick up a few on occa­sion.

As I said, I ordered the Kindle. They sent me the leather cover, but the Kindle itself is on back­o­rder for up to a month. I received the cover yes­ter­day, so for the next few weeks, I get to play “The Emperor’s New Clothes Kindle.”

Because of this XKCD comic, my first book pur­chase was The Hitchhiker’s Guide to the Galaxy. It is rather appro­pri­ate, con­sid­er­ing the Kindle con­tains a free cel­lu­lar modem and links up with Wikipedia. Confession: I have never actu­ally owned H2G2. The sev­eral times I read it, it was bor­rowed from the library. Since then I have relived it through audio­book, two dif­fer­ent radio­plays, a British movie/miniseries, and the recent movie. It is about time I got back to the source mate­r­ial. Another side note: the iPhone Kindle reader is actu­ally quite nice and has allowed me to start re-reading H2G2. The auto­matic sync­ing is a hot fea­ture, which will allow me to pick up where I left of, regard­less of which device I am cur­rently using to read.

Because I am a tin­kerer at heart, I have already started research­ing hack­ing the Kindle. It is Linux based, runs the U-Boot boot loader, has a debug ser­ial con­sole (requir­ing TTL level con­ver­sion, unfor­tu­nately, so I will have to build/find an adapter), and the user inter­face is reverse-engineerable Java. It actu­ally does not seem like that com­plex of a device, hon­estly. It is cer­tainly sim­ple in com­par­i­son to the embed­ded Linux devices I design at work.


In keep­ing with the book theme — in case you were won­der­ing, The Elements of Style is avail­able in audio­book for­mat. WTF? This is a book with infor­ma­tion and exam­ples about the usage of apos­tro­phes, com­mas, and vs. amper­sand, colons and semi­colons, and con­tains a large list of com­monly mis­used terms. Something tells me that the exam­ples prob­a­bly get lost in the nar­ra­tion, or per­haps the nar­ra­tion is extremely dry.


Due to a few tweets and blog posts about Virtuality, a tele­vi­sion pilot that Fox paid for but for which nobody picked up the rest of the series, I had to give it a try. Oh, man, was this a great open­ing episode (or now, I guess we have to call it a made-for-TV movie.) Upon read­ing that parts of it were in “real­ity TV” for­mat, I was a bit hes­i­tant and skep­ti­cal, but you know, it works out pretty well. Overall, I thought this was a great blend of the human side of things and the hard­core scifi. I am not a rocket sci­en­tist, but know a thing or two about physics, and it really looked like they did their research and hit a lot of lit­tle details that most folks would over­look. The mys­tery and para­noia com­bined with the sus­pense and excite­ment of the go/no-go (I’m a huge sucker for event hori­zons, points of no return, heavy machin­ery spin­ning up, count­downs to igni­tion, count­downs to minimum-safe-distance, and the like) really had me on the edge of my seat through­out the whole episode movie. It is still avail­able for watch­ing on Hulu for a short while (and also can be found amongst the tor­rent of bits) and is highly rec­om­mended. It is just a shame that nobody bought the series after such an amaz­ingly amaz­ing pilot.

Posted in: Books Gadgets Television

Why I probably won’t be getting a Kindle 2

What I have seen of the Kindle 2’s design makes it an envi­able device to gadget-lover-Brian. While the first Kindle looked like it was made by Tandy, this updated one looks like it came straight out of Cupertino. It almost looks like an over­sized iPod Touch, seam­lessly melded with a key­board, and large enough to be read from.


But that’s gadget-lover-Brian. Home-owner-Brian is less sure of the eco­nom­ics of it all. Part of this is related fea­tures, but most of it is the DRM and media model.

Sure the Kindle comes with free inter­net access for web­pages and down­load­able blog con­tent and RSS feeds. But, you see, I already get that on the iPhone. It down­loads all of my Google Reader con­tent, saves it for offline read­ing, and lets me hit up any web­site with a zippy web browser. I do not know about the K2, but the orig­i­nal Kindle has these fea­tures, but more clunky, in a sec­tion of menu labeled “exper­i­men­tal.” While I carry my iPhone every­where (it’s my phone, date­book, and long-term-storage notepad — as opposed to the Hipster PDA notepad I carry around for quick data-capture), I don’t see myself car­ry­ing the Kindle every­where to access these same fea­tures in a less zippy inter­face.

Home-owner-Brian’s biggest com­plaint with the Kindle is the media. I’m a big fan of books. After my most recent Powell’s purge, Delicious Library shows me as still own­ing 514 books. I’m also big fan of let­ting friends and cowork­ers bor­row books. These two things are at odds with the Kindle’s busi­ness model.

With the iPod, I can take my entire exist­ing library of CDs and, with very lit­tle effort, load them into the com­puter to sync to the iPod. It is a mat­ter of telling iTunes to auto­mat­i­cally import and eject a CD, then feed­ing the com­puter a steady stream of CDs over time as I do other stuff. 500 CDs might take sev­eral ses­sions, but could prob­a­bly be done in a week or two. I’m try­ing to imag­ine doing the same with books. Scan a page, flip the book over to scan the fac­ing page, flip to the next pair of pages. There is a lot more hands-on effort as com­pared to keep­ing an eye on the CD-ripping per­cent­age bar. There will prob­a­bly be some OCR soft­ware involved, as you would want to store that con­tent as text rather than images — images that are large, don’t allow re-wrapping of text arbi­trar­ily, and with lines prob­a­bly shifted by a degree or two instead of being a per­fect right angle to the edge of the page. I have a dif­fi­cult time imag­in­ing doing this with one book, much less 500.

The DRM is another bit of nas­ti­ness. I’m used to let­ting peo­ple bor­row books. The Kindle doesn’t really have a way to do that. I remem­ber read­ing about some kind of hack­ery in which you could “loan” your book to another Kindle reader (but then you couldn’t access it your­self until that per­son was done?), which I guess kind of works — if the sorts of peo­ple you are loan­ing your books to are Kindle own­ers. To me, that scheme seems awk­ward at best and impos­si­ble at worst because most peo­ple I would be loan­ing books to do not have Kindles. Going back to the iPod/iTunes com­par­i­son, Apple had DRM, but there were some loop­holes in that regard. You could always burn a few tracks to disc and make a “mix tape” for a friend. You could sim­i­larly burn an entire CD to disc and re-rip it (poten­tially loos­ing a lit­tle bit of audio fidelity) to com­pletely strip the DRM for use in non-Apple-approved MP3 play­ers. Although these were not “fea­tures” as bul­let points on a mar­ket­ing paper, they were “fea­tures” that con­tributed to the usabil­ity of the device and the con­tent ecosys­tem in which it lived. The abil­ity to exer­cise your fair use is impor­tant.

If Amazon could some­how fix or cir­cum­vent these two issues in the Kindle 2 release (and who knows — they might, we’ve only seen leaked hard­ware pho­tos and heard noth­ing of pos­si­ble ser­vice changes), I would be more recep­tive to the new Kindle. As a fru­gal con­sumer, I really do not rel­ish the thought of re-purchasing my exist­ing library in a new for­mat. I do under­stand that the Project Gutenberg foks have plenty of clas­sics for free, but hon­estly, the books I really want to read are much more recent releases and not avail­able through that group. I already own the paper ver­sions and under­stand that “rip­ping” [no pun intended] them in the con­ven­tional for­mat is time-and-effort pro­hib­i­tive, but maybe Amazon can do some­thing where you scan the bar­code and you get the book for free, but with more checks and bal­ances to make sure you don’t just tromp through the library or book­store and scan every­thing. Perhaps tak­ing a photo of your­self hold­ing up the book in a non-bookstore-or-library envi­ron­ment? They could use Mechanical Turk to approve and deny photo sub­mis­sions. This would at least get my exist­ing library into the Kindle. The bor­row­ing I am less sure of, but per­haps they can take a page [another unin­ten­tional pun] from O’Reilly.

I do feel that O’Reilly had got­ten eBooks right. When I pur­chase an elec­tronic book from them, I am deliv­ered a plain vanilla PDF. There is no DRM; it can be read by any appli­ca­tion or device that under­stands PDF files. Although it is a plain vanilla PDF, it is computer-generated specif­i­cally for me. At the bot­tom of every page is my name (or email address or some other human-friendly iden­ti­fy­ing infor­ma­tion) and some ser­ial num­ber stuff (computer-friendly account infor­ma­tion because names are not always unique.) The onus is then on me to do the right thing. I can share the whole thing with some­one if I think them trust­wor­thy. I don’t do that, but I like hav­ing the option. I can print out a few ref­er­ence pages or the intro­duc­tory chap­ter for a friend — much like pho­to­copy­ing the same from a print book. Every page points back to me, so I can­not just pub­lish it on The Pirate Bay, but I can cir­cu­late it within my social cir­cle, just as I can do with dead-tree books and music. If the Kindle eBooks were to drop DRM and be a more device/software agnos­tic for­mat, home-owner-Brian would be much more inter­ested in the device and ser­vice.

Posted in: Dear Diary Gadgets