KindleAndroidBadlyCodedMajor tech companies sometimes have a surprising habit of rolling out sub-optimal products in what are supposed to be their core competence areas. For example, Google’s Chrome browser for Android gets some indifferent assessments at times over issues like speed and cache bloat, and this is Google’s own flagship browser running on its own OS. And think of Microsoft’s terrible record in pushing out new versions of Windows that have been panned by the marketplace, and required revisions, rethinks, and still newer versions.

Which brings me to some recurrent frustrations over the Amazon Kindle app. For the longest time, this core Amazon offering has been … keeping me waiting the longest time to actually read stuff with it. And given that Amazon’s own Kindle runs a more or less modified version of the basic Android OS, and that the Google Play Store currently puts the Amazon Kindle app in the 100-500 million installs range (at version 4.12 too), you’d think that this was the one thing they ought to get right, right?

Well, to make sure my aggravation wasn’t just false impressions, I timed loading on two of my devices for the Amazon Kindle app, versus my preferred app for EPUB, FBReader, with both apps force stopped before restarting and cache cleared. (And these figures are approximate, based on stopwatch timing, but pretty close to the mark.) On my smartphone, a Navon Mizu M500 running the MediaTek MT 6589 quad-core chip at 1.2 Ghz, the Amazon Kindle app took around 16 seconds to open to the current book. FBReader, meanwhile, took only 2 seconds. On my Google Nexus 7 2012 version, the difference was even more marked. The Amazon Kindle app took around 30 seconds to open – compared to just 3 seconds for FBReader.

I can’t imagine that the FBReader has been specially coded for lightning-fast opening times, so what is going on with the Amazon Kindle app? Both apps have pretty big libraries on both devices, so there shouldn’t be an issue there. And FBReader offers far more styling and personalization options than the Amazon Kindle app, as well as plug-ins, so it can’t be feature bloat either. Is this simply cruddy coding work by the Amazon programmers? I’d love to know. And I do wonder if anyone would use the Amazon Kindle app at all if it wasn’t for the Amazon bookstore behind it..

7 COMMENTS

  1. It’s not clear from your description if you are comparing time to open books already on the device or times to download and open a book.

    For books already on the device, n my Nvidia Shield, the Kindle App opens my current book in 5.9 seconds. Moon+ Reader on the same tablet opens the current book in 5.5 seconds. Not enough difference to worry about.

    My experience is that Kindle app times of 16-30 seconds (including on my former Nexus 7 2012) device are more typical of downloading a book onto the device. But I’d question whether pulling a book from the web is the typical use-case for someone re-opening a book they have already been reading. It’s almost certainly not the scenario that Amazon’s whispernet service was originally designed for.

    You say that you can’t imagine that FBReader has been specially coded for fast opening times. Why not? Anyone who has used Microsoft Windows is familiar with the trick of displaying the Desktop for many tests of seconds or minutes before you can actually do anything. It makes it look like the program has loaded much faster than it really has.

    Case in point: The Kindle app appears to check for your last reading position (on Amazon’s servers) before trying to display a page. Moon+ displays the last page while it is contacting DropBox to see if I have a more recent page-read mark. So I may see several additional seconds go by before Moon+ pops up a notice offering to sync to my last read position. If I include that time in the comparison, the Kindle app is actually much faster than Moon+. I don’t know use FBReader, so i can’t comment on whether they are doing similar things, but it’s hardly an obscure trick.
    The time required to retrieve sync information from the internet seems to be on a par the time to actually open an in-memory book. Frankly, if FBreader is consistently opening in 2 seconds on your phone, I have to wonder if you are even using their cloud sync functionality. (I’m also guessing that your phone is working through WiFi and not over the phone network.)

  2. Well, if you aren’t using the FBReader cloud to sync your reading locations, then it’s not really a like-to-like comparison. You are comparing the time for the Kindle app to load a book from memory, check a remote server for your last read location, and display a page to the time for FBReader to load a book from memory and display a page.
    Part of my point was that the network access may well be a significant component of the overall time.
    But I really wonder what’s happening in your case. I just don’t see 16-30 seconds to open a book in the Kindle app on my Shield. I don’t recall seeing times anywhere like that six months ago on my Nexus 7 (same device as yours). And I just tried on my Nexus 5 phone (slower than all of the above) and still saw times in the 5-7 second range. If you are seeing 16-30 second times for this, I think you have to consider that something else may be in play besides the coding of that particular app.
    What I see is that two similar apps, one that uses the network and one that doesn’t, give very different times for you, with the networked app being slower. That’s not surprising, in and of itself. But if your times with the networked app are also way out of line with what others experience, that points to something odd in your local networking environment.
    So, the question is, do other people see Kindle app times closer to yours or to mine? (Maybe I’m just lucky.)

  3. I have about 1000 books on my nexus 7, and my Note3.

    On my nexus, I hit my kindle app, it loaded to my Books->on device option. I swiped down at random, and when the scrolling stopped, I selected Fierce Patriot, a book I haven’t read yet.

    Took about 4 seconds for me to see the table of contents.

    Took 7 seconds for me to open the same book on my Note3, but I also had a couple of more programs running on the phone.

    Andrew

  4. When I lived in Seattle, I met several Amazon software developers. The California-based team that develops these apps is considered one of the best places to work at Amazon, so it can be picky about who it hires and get the best. The others get stuck with web services.

    That said, Amazon is world-class in serving up webpages, while its apps leave a lot to be desired. A lot of their app tools for authors strike me as little more than junk, at least those for the Mac platform.

    For years my sense has been that Amazon simply doesn’t spend enough money on app development, probably because its corporate executives have no ego investment there. (Most corporate money follows corporate executive egos.) The app developers are good, they’re just not given enough money and staffing to create quality products. Audible seems to be an exception, but then Audible isn’t Amazon itself.

    Also keep in mind that Android labors under numerous disadvantages. It is not a profit center. Google pays to keep it alive, hence has little incentive to make it world class. On the other hand, a huge slice of Apple’s profits could from its iOS devices. It expends a lot of effort making app development for the platform efficient and powerful. I’ve had developers tell me that makes creating apps for iOS a delight. Among those tools are efficient ways to optimize the code so apps load and run fast.

    In short, if your complaints be true, Amazon’s woes may flow from its developers not being giving the resources to optimize that Kindle app, including the tricks other mention to make an app appear to load fast.

    The Kindle app for iOS has issues too. With every upgrade, I have to reenter my login. Other apps don’t force that hassle on me, so it appears Amazon simply hasn’t bothered—or spent the money—to include it.

    That isn’t to say that Apple’s iOS apps can’t be junk. Their Clock app is a good example. Obscure U.S. cities with only a few thousand people are included while at least two states have no cities in the list. And because no state is given in the listing, users have no way of knowing which of several states with cities of that name a particular city is, other than perhaps the time zone. “Portland, U.S.A.,” for instance, is Portland, Oregon, while Portland, Maine (the largest city in the state) isn’t listed, nor are, as best I can tell, any other cities in that state.

    Apple’s Clock app simply boggles my mind. One one hand, parts seem incredibly stupid, such as not including states with cities or totally leaving out states. On the other hand, other parts show careful (if cowardly) political calculation. Neither Jerusalem, capital of Israel, or Taipei, capital of Taiwan, have their countries given. Yet Gaza, one of the worst hell-holes on earth, is primly assigned “Palestinian Territories.”

    Making matters worse, I’ve got third-party clock apps that have excellent city listings. It’s not that Apple’s Clock app is one bad app among many. It’s that it’s a dreadfully bad app among many quite well-done ones. I can’t even imaging a summer intern tasked with too much to do coming up with an app that bad. It’s almost perversely bad.

  5. My Kindle app takes minutes to simply open on all my Android devices. I suspect it may have to do withy thousands of books purchased at Amazon, even though I only keep 1-3 books on any device. It is a glaring problem which Amazon simply ignores.

The TeleRead community values your civil and thoughtful comments. We use a cache, so expect a delay. Problems? E-mail newteleread@gmail.com.