The Price of Success – An Android Apology & Solution

Note: The iBird Android apps are now working and in the Google Market. If you have a support issue please go to this page and fill out our support form. Contact iBird Support If for some reason you can’t use that form you can try support at ibird dot com.

You’ve heard the stories.

  • The Brittany Spears concert sells out in 10 minutes and the ticket master web site crashes.
  • President Obama implores the American people to let “your Member of Congress” know they want  a “balanced approach to the budget” and at least nine Web sites for House and Senate leaders go down.
  • Target’s web site comes crashing down as Missoni-loving fashion devotees scramble to buy the high-end Italian designer’s clothes for a song.

While this drives us crazy there is one positive side effect; someone did something right to cause all the attention.

I Want My iBird NOW!

Those of you who tried to upgrade the iBird Pro for Android in the Google Market on Wednesday felt the pain as the database took a ridiculously long time to synchronize.

I’m writing here today to apologize for this unintentional faux pas and to let you know we are doing all we can to fix the issue and explain what caused it.

The reason for this, to cut to the chase, was the was much higher demand than our server could keep up with. Why? Well this particular update to iBird made it compatible with a large number of Android tablets launched in the last year. Up till now the app only worked well on smartphones with small screens.  This version also contained brand new high res 720p illustrations and photos. These made the database about twice as large as the previous version. So unbeknownst to us the number of customers who had new tablets and wanted to update was huge so within a few hours of the apps appearing in the Google Market our web server slowed to a crawl. Updates of the database, which normally take no more than 5 minutes to an hour and a half were taking several hours.

At first we thought something was wrong with the program. Which was a shock because we’ve spent the last 8 months testing this app over and over until we were sure everything was working great.Whats that saying about an ounce of prevention?

Not.

Unpublish iBird from the Google Market

The only thing we could do at this point was to plug the dike meaning put a stop to the number of people getting caught in this mess. So we unpublished the Pro and Lite apps. We didn’t remove Yard since we had not updated it but its not designed yet for tablets.

No Excuses

Which just goes to show you why software is such a tough business and so many companies find themselves stuck in this situation. Now I know there are those of you out there that feel there is no excuse for this kind of problem and all I can say to you is the world is not perfect and neither are we. We just didn’t anticipate that so many people would want to download iBird at the same time. After all this is not an app that people can’t live without. Or maybe it is? Some of the emails we got: “When are you going to get things fixed so I can update my iBird? This is horrible–I am about to go on a birding tour and I had planned on showing everyone how good I am at identification. Now what am I gong to do? My reputation will be ruined.”

Hence the double-sided coin of pain and pleasure alluded to in the beginning of the story: people love our app more than we ever imagined. Which feels great. But at the same time people have become so dependent on iBird that there’s this huge pressure to keep it running perfectly all the time.

The Android Arms Race

While we are addressing disappointment let me get this out of the way.

iBird is not going to work perfectly on all tablets.

Yep you heard that right.

Why?

A myriad of reasons. For one with the introduction of the tablet the app has become much more complicated.  In this current 2.0 update we have made it so iBird “adapts” to different screens resolutions.  That might not sound like much much but it’s a really tough thing to get right. You see the so-called Android “standard” is actually a patchwork quilt of different versions. In fact Google has revised Android at least five times in the last three years.  And they have created 3 different Android OS’s, one for smartphones, one for tablets and one for televisions (what you have not heard of Google TV?).

Each time Google revises the OS it means that things that once worked fine may now break. As far as Google is concerned it’s the responsibility of  developers to keep up with these OS changes.

On top of these changes in the OS we have carriers trying to differentiate their devices from other companies.  They accomplish this by making changes to the hardware and the software itself. These changes make each Android device work different than others. There is literally an “arms race” among carriers as they try to make their device better than the other guys. Caught in the middle are developers, like ourselves, who have to make sure their apps can still work on all these devices. Let me tell you its a huge mess. Indeed there is a company called Device Anywhere which has a web site that emulates all the different Android devices on the market. Developers can rent time on their site to test their apps, but trust me it’s not cheap (hundreds of dollars an hour) and it’s so in demand you have to make an appointment to test your app. Nice business to be in but the point is the poor developer is caught up in this ever changing landscape of hardware alternations.

I know some iPhone developers who actually refuse to port to their apps to Android because they can’t justify the amount of work required to keep the app up to date.

With iBird we have tested it on at least 50 different devices. We know there are some Android devices which iBird will not work on. But since Google gives you 15 minutes from the time you make a purchase to the time you can get a refund we recommend you take this time to download the smaller iBird Lite and see if it will work on your device. If it wont then please cancel your order and get  refund. Otherwise you have to wait while we try to figure out why iBird won’t run on your Optimus Trend Setter Tablet.

The Solution – CDN

So we have a solution to the server overload issue and it’s called a Content Delivery System. Essentially this is a service provided by different companies such as Akamai, Edgecast, Rack Space, GoDaddy GoGrid and others that hosts media and lets it be downloaded and streamed with high bandwidth. CDNs are typically used for steaming videos and music as well as for downloading software. They do not require that you buy any hardware or even set up any software, rather then give you an account and a browser based dashboard where you upload your content for storage. You get a URL that goes into your application, or a player you can install that is able to download the data from where its stored by the CDN,

How Long will iBird Syncing take with CDN?

The time to sync iBird on the CDN network depends not only on the speed of the CDN network but also your WIFI and your ISP which your WIFI connects to. Its a chain. It starts with the CDN but then goes through these other pipes until it gets to your Android device.

Here are the results I got testing last night using the GoGrid (re-purposed EdgeCast) CDN. This is on a Samsung Galaxy Tab 10 which is a very fast tablet.

Product Download Sync Time Size Birds/Min
iBird Lite 30 35 sec 5 min 30 MB 6
iBird Pro 924 5 min 90 min 550 MB 10

Now your own mileage may vary. Note that iBird Lite with only 30 birds downloaded them all in 5 minutes, meaning about 6 per minute while iBird Pro with 924 birds downloaded them all in 90 minutes meaning about 10 per minute. Why? Because with so many more birds iBird Pro has more time to take advantage of the bandwidth and therefore represents a more realistic average.

The bytes downloaded per minute is around 6 MB (550 MB / 90 min = 6.111 MB / min) or about 100K per second. This is pretty fast by most internet standards. But again it is going over WIFI and that puts a pretty good bottleneck in the speed.

Here are the results I got testing the Maxcdn CDN today. This is on a Samsung Galaxy Tab 10 which is a very fast tablet. This is the CDN we finally settled on.

Product Download Sync Time Size Birds/Min
iBird Lite 30 22 sec 1-1/2 min 30 MB 20
iBird Pro 924 2-1/2 min 27 min 550 MB 34 !!

Note the time to sync Pro went from 90 minutes on GoGrid to 27 minutes on Maxcdn.  So the birds downloaded per minute went from 10 to 30. That’s 300% faster!

The bottom line here is the CDN will vastly improve the download time of iBird. We can’t promise you will get the kind of speed we did but hopefully it will be way better than the hours it was taking last week.

Thank you for your patience.

Mitch Waite

Note if you have a support issue please go to this page and fill out our support form. Contact iBird Support

25 thoughts on “The Price of Success – An Android Apology & Solution

    • Thanks Ned. I also hope everyone is as tolerant as you are. I have been able to determine the image problem has something to do with the system confusing the MIME type, since we dont use an extension on our images, so I am closer to a solution.

  1. It is worth the wait. I downloaded just a few birds to my Motorola Xoom to see how the new High Def pictures look, and I have to say — Amazing. The drawings look almost 3D.

    Alan

  2. Thank you Mitch… awesome reply. Definately worth the wait… iBird Pro is an amazing application. I love your title… The Price of Success … I’ll be patient as you work out a solution. You truly have done a lot of things right. Keep up the great work.
    Mike

    • Just a thought… is there any way the database could be made available for download via the web on secured server?… so it could be downloaded at high speed, and then transferred to the devices via hardwird USB connection?

      • This is exactly what the article is about, putting the database on a CDN so that it can be downloaded at high speed. That part is working. The only problem now is that for some reason iBird is downloading the images as non binary in some cases and they are getting mangled. There are enough messed up that publishing it this will result in a ton of upset people AND it once we fix it the database will need to be downloaded a second time. So we are going to fix it once, rather then twice.

  3. Thanks for the info and I appreciate all your hard work. I use iBird pro almost daily and it sucks to be without it, but I certainly understand how these things happen. My one suggestion would be to post some note, or link to this page, on the Android Marketplace. I thought my phone was messed up and ended up contacting tech support. I simple notification on the market page would have avoided this.
    Thanks again.
    Great program!

  4. Thanks for the understanding. Unfortunately the way Google has the market set up when I unpublish an app I can no longer leave any comments! I tried reactivating the old version of Pro but the system tells me its version is older than the most recent and so I can’t do that either. Rock and hard place. I hope to have the image issues worked out today and that will make this all go away.

    • Ah, that makes sense.
      Don’t stress on it too much, it is just a phone app after all, we will survive.
      You will get everything up and running and all will be forgotten 🙂

      Hey, while I have your personal attention, do you know how the data will be stored on the Bionic? The Bionic has a weird 3 part memory system. 4 gigs for apps, 4 gigs for internal media storage and then a 16gb SD card. It seems that many programs are thinking the internal media storage is the SD card and that is where stuff ends up. Do you know anything about this or how iBird is going to deal with it?

  5. Update Tue 20 Septemeber 2011

    I have some great news. We have the problem with the CDN and the bad images solved. Turns out that the GoGrid CDN (which is really edgecast resold) has some kind of caching system that was sending back incomplete image files. My developer tried to fix it with some tricks but in the end the solution was to simply switch to another CDN, Maxcnd (www.maxcdn.com). Not only is Maxcdn much less expensive than GoGrid it turns out to be 300% faster! Instead of taking 90 minutes to sync Pro it takes 30 minutes.

    I am going to submit Lite to the Google Market today and if that goes well I will submit the other two apps (Pro and Yard Plus). I hope this solves the bulk of the Android issues but like anything in life, there are no guarantees.

  6. Good Afternoon Mitch, Just downloaded the update and everything is working great, it synced all of the birds in about 40 min. Great. Thanks for the fast! response. As a side note, I am also using iBird pro on my android tablet, a acer iconia A500 and it must have some issues with rotation. Just thought I would let you know. Thanks again for a great app. and great customer service.

    • Hi Lance – thanks for the kind words of support. Can you find the time to leave a review in the marketplace to help balance all those angry ones about it not installing? Its nice to hear iBird works well on the Acer Iconia A500 – several of our testers have that tablet and love it. Re rotation right now there is only one orientation for up in Portrait mode. It should really not matter but what can I say. We’ll eventually fix that 🙂

  7. All three iBird apps, Pro, Yard Plus and Lite are now on the Google Market. There may be a problem with Yard Plus, we are investigating. But Pro and Lite are working well and the feedback we are hearing is that the syncing is WAY WAY faster – 30 to 40 minutes for Pro on a tablet.

  8. Thank you for your perserverance and patience in working out the kinks in iBird and in enduring the slings and arrows. A $10.00 app that can supplement or even replace $100.00 worth of similar references deserves the space to evolve and grow. So sit back, bird fans, and watch this Phoenix fly!

  9. The original Android app was about 13 MB. I’ve been having trouble installing the updates (2.04 and 2.05) so I decided to uninstall the app and just install the newest version from scratch. That worked just fine but the app is now over 26 Mb. Yikes. I really like the app but that will decidedly cut down on my ability to add anything else.

    I have an app called App2SD which lets me know if an app can be moved to the SD card. It tells me that ibird can be moved but when I go to settings the option is greyed out. Can the app be moved? or is it just that the database will load on the card?

    Thanks for a great Field Guide!

  10. Thanks for an excellent app for the android market; I was hoping that the new version would include the ability for multiple favorites and life list capability – any thoughts on if and when these may be released?

    • All those features, plus more, are slated for our next release. Glad your happy with what we did this time around. I do think it took us too long however and we are working to speed things up. Did your installation go smoothly?

      • Thanks for the update on the next release; the multiple-favorites is important to me as a volunteer at the local Ornithology Center as I enjoy showing the visitors images of what birds are displayed and it would be ideal to have a separate favorites list for each area of the center; not to mention that I do visit several areas in the US and would love to have a favorites list for each.

        • Our iPhone/iPad version of iBird has multiple favorite lists and multiple note lists. And I totally get why they are so important to you. We want to get the Android apps caught up with the iPhone versions but if you read some of my blog posts about how hard it is to develop for Android I think you can appreciate why we can’t move as fast.

          One hope I have is that out of Google buying Motorola comes far better integration of software and hardware then what they offer today, along with tools that are the equal of Apple’s and a killer phone that really grabs the developer community. Google has so much power in their network I dont understand why they have not capitalized on it in their own phone. But my hopes are moderated as I look at what they have done with Google TV. Its cool and all but its not as killer as I expected.

Leave a Reply