iBird for Android 2.0.9 and 2.0.10 Troubleshooting FAQ

UPDATE: iBird Pro version 2.2.1 is now available on both Google Play as well as Amazon.com. It’s approved for the Kindle Fire and for any Android smartphone or tablet.  The way the installer works has completely changed. We no longer allow downloading one species at a time or all the birds starting with a certain letter of the alphabet. Instead the entire database is downloaded before the app can be used. I will be updating the blog in the next week to give more details for for now please update your current version of iBird.  We have discovered that occasionally the server we use for storing our database (MaxCDN.com) will drop a connection while its syncing. When this happens it can cause the entire db to be corrupted and the only solution is to erase the database,  uninstall iBird and start over. We have a solution we hope to implement soon that keeps track of the download of each file and if it drops the connection iBird will retry three times to reestablish the connection.  If you would like to beta test this for us, please send an email to support at ibird dot com with the title “Would like to Beta Test iBird” and reference this post.

This FAQ is written for the newest version of iBird Pro for Android: version 2.0.9 and 2.0.10.  Unless you are already a very patient and hard to ruffle person, I suggest you jump down and read my earlier post iBird 2 for Android Troubleshooting FAQ. This was written in Nov of 2011 and will not only cover issues with pre 2.0.9 iBird Pro but also help you get through the non trivial issues that arise when dealing with Android software.

FAQ You are installing iBird version 2.0.9 and get the message below:

The  message “iBird encountered an error and is unable to create or download the database….etc” means something has gone wrong during the installation of iBird. We are working on a solution to prevent this but for now to fix this you need to uninstall iBird from your device (phone or tablet), remove any iBird database folder that may have been created, and try to install the app again and sync its database. The rest of this FAQ explains how to do that and gives tips on how to make sure the sync is successful.

Tips for Downloading the iBird Database

iBird’s database is very large, pushing towards 600 MB. We often get complaints about its large size. Less frequently we get complaints that there are not enough illustrations, photos or other content. The deal is you can’t have both large amounts of data and small size. You want higher resolution? Then you have to accept that data is going to consume more space on your phone or tablet. Why not just put it on a server and download as needed some people ask? Because that means you wont be able to view it in the field where there is no WiFi or cellular connection available. Maybe someday when telecommunications is so ubiquitous that everyone has there own personal satellite in orbit a server solution will work. But for now downloading the database is the only good solution. And it’s really not that hard as long as you take a few precautions before you start. Here are some tips to help increase the odds of not running into trouble.

  1. Only download the iBird database over a fast WiFi connection. DO NOT USE YOUR CELLULAR CONNECTION. Because most cell carriers are metering the download of data, if you go over your monthly allotment you will incur additional costs.
  2. Monitor the download and be prepared to intervene if there are problems. Some networks will intentionally slow down your connection when they sense you are “hogging” the bandwidth, particularly DSL type of internet services, so you need to keep an eye on the progress of your iBird synchronization. (BTW we are not alone in the approach of downloading the database as a separate process from installing the app. The Audubon app uses the same approach.)
  3. Insure you have at least 1 GB (One gigabyte – 1,000 megabytes) of space available for the iBird database. While it only uses half that, as it downloads it may put part of the files in a temporary part of your memory so at times you can have twice the space consumed. Once the database has finished it will take up the advertised amount.
  4. Set the Display Time out setting to Never or as long as you are allowed on your device.
  5. If you have problems downloading please don’t leave a 1 star review that says “This product is a !@#$%^ and won’t download”. Instead take the adult approach and write to our support group using the form we have prepared to help us do a good job. Here is the link: iBird Support Form. If you just want to drop us a quick question you can use the email address support@ibird.com. But we warn you – if you need more help you will have to fill out the form and we will send you to it.

When Syncing My iBird Database Stalls

Its not uncommon for the database to stop downloading in the middle of the process. We are working on a programmed solution to this but for now we have put together this quick tutorial on how to cure the problem manually.

Go to the More Page to Sync the Database

Step 1. Go to the More Page to start the synchronization (downloading) of the database.

Step 2. Read the instructions.

Step 2. Read about the different ways to sync the database. You can sync in small sections by selecting then syncing all the birds starting with the letter A, then move to B, and so on. Or  you can Sync All the birds at once. You can even sync one bird at a time by just opening its species page and waiting for the data to download.

Step 3. Press the Sync All button to start the download

Step 3. Press Sync All to sync all the birds in the database. You will need to monitor the progress.

Step 4. Monitor the downloading. If the progress bar stalls press the hardware back button than press Sync All to resume.

Step 4. Monitor the progress bars as the download continues.

If the progress bar stops and does not move for more than a few minutes press the  hardware Back button then press the Sync All button again. You will see iBird verify the species that have already been downloaded and the bottom progress bar will move. Once it gets to the first bird that was stuck the progress should resume.

How to Start the iBird Installation Over

Some people have found that iBird gets in a state such that it can’t finish the installation or synchronization. Or it gives an error that there is no SD Card and you know that you have an SD Card and its got plenty of room. In this case the best solution is to start over. Here is how to do that.

Know Your WiFi Bandwidth

One of the first thing you need to do is make sure you have a good connection to the internet with a fast WiFi. We have seen many situations where the customer thinks they have a fast WiFi only to discover upon testing this is not true.

Why is bandwidth important? Because iBird is a really large database. In fact it’s too large to store in the Google Market. To understand this lets calculate how long it takes to download a 600 MB set of files over a 1 Mbps connection, which is typical of a wireless router connected to a DSL network. Assuming a byte is about 8 bits a 600 MB file is 600 x 8 or about 4800 megabits. 4800 megabytes divided by 1 megabits per second = 4800 seconds. In minutes this is 4800/60 = 80 minutes  or 80/60 = 1.33 hours. Call it 1-1/2 hours. Because there are several thousand files that make up the iBird database there is a good deal of overheard so that the actual download will be even longer. Consider a 50% efficiency the download time can double to 3 hours.  If your bandwidth is 2 Mbps you can assume your download will be 1-1/2 hours and if its 6 Mbps it will take 3 / 6 or 1/2 hour  or 30 minutes. I have a cable connected to a very fast router and speedtest.net says my bandwidth for download is 20 Mbps so should I expect it to take 3 / 20 = .15 hours or 9 minutes? I wish. The problem is the tablet or phone can’t process files as fast as my bandwidth seems to allow. The best I have been able to get is around 15 to 30 minutes.

Keep in mind that some ISPs will slow down your network if it thinks you are hogging the bandwidth and so the calculations can go out the window. Another factor are the servers that stores the files for iBird. If there is a lot of traffic on them it could slow the download time. We see this sometimes when a new update is first released and thousands of customers are attempting to update at the same time.

To test it you can download another app from the Market. My favorite is speedtest.net. Run this app a few times and make sure your bandwidth is as fast as we described in the previous section. If its lower take a look at your router to see if its using the right protocol or talk to your Internet ISP and see if they can explain why its not faster.

  1. Uninstall iBird. Use either the Market uninstall button uninstall the app from Settings using Settings→Applications→Manage Applications→iBird Pro then press the Uninstall button
  2. Remove the iBird Pro folder. Use a third party file manager app from the Market. My favorite is Astro File Manager. Find this app in the Market, download it then use it to locate the folder iBird_Pro on the SD Card. If you don’t have a physical SD Card you can find it in the folder mnt/SDCard.
  3. Now since you have already purchased iBird you can go to the Market again, search for it by typing “iBird” in the search box.
  4. Now go ahead and reinstall iBird. When it is done resync the database.

Hopefully this time your installation and syncing will work better.

If you continue to have problems please contact our support team and we will work with you.

FAQs from iBird Users

 

One wise user recommended disabling “automatic updates” for iBird in the Google Market. Reason? If this setting is ON (the checkbox is checked) Google Market will try to install a new update to the app in the background. That could lead to problems, for example if you are on a slow network, don’t want to incur the costs on a cellular network, or if you happened to be in the field. If  you keep automatic update OFF the Market will still let you know if there is an update when you go to My Apps in the store. But it will be up to you to start the update so you can do it when you have a fast WiFi connection. Note iBird will still let you know if there is a database update because we do that in the app. And of course you can press the Later button to do the database update some other time.

Lessons I learned from Steve Jobs

Greenbrae Boardwalk 1976

As we strolled down the Greenbrae Boardwalk on a beautiful day in April 1976 Steve Jobs could care less about Snowy Egret’s gliding inches above the salt marsh. His focus was relentlessly on the unreleased Apple II.

In Steve’s words the Apple II was going to make the Apple One which I had bought from his garage “look like shit”.

I found his comment confounding since I’d spent the last 3 months building a weather station with the Apple One and it was supposed to be the reason we were meeting.

But I will never forget something Steve said that would go on to become a basic principle of all his future work. When he and Woz unveiled the Apple One in 1975 at the Homebrew Computer Club at Stanford its most amazing feature was the “high resolution” two color graphics. This was 280 x 192 pixel display mode that you had to load from the cassette storage interface. While it only offered four colors–green, violet, black and white–this was far ahead of anything you could buy on the market. Now 280 x 192 is pathetically low res in light of today’s HD displays but for guys like myself in the mid seventies it was totally astounding. It meant I could draw charts of the height of tide, wind speed and solar energy over time for the weather station.  That, and the fact I was writing a book about Graphics on the Apple, was what had dragged Steve to drive his VW Bus to meet with me.

But he was not interested in hearing about the weather station and its PIA interface to the Apple’s 6502 processor. Spittle formed at the corners of his mouth as he looked at me with a laser focus.

“We have come up with a way to get 16 color graphics on the Apple II with only 2 chips; no one has managed to do anything like that before.”

I asked why that the number of chips was so important and Steve looked at me like I was a classic “bozo” which was his word for anyone who was not a genius. “Minimizing chips is the cornerstone to the success of the Apple computer. Look at all the other S-100 machines out there are you will see they are stuffed to the gills with parts. But lots of chips means lots of heat, many more points of failure and worse of all high cost.”

Lesson 1. Minimization coupled with elegant design is the key to the success of any product.

This idea of minimalism coupled with outstanding performance and beauty would come to characterize everything he worked on in the future. Steve knew in his gut that the color aspects of the Apple II would delight his customers. Climbing with him on the roof of my houseboat to show the wind speed propeller made of 3 cook’s tablespoons I would have never thought that one day this man would change the world and touch millions of people like no one had in the history of technology.

Steve Jobs was 9 years younger than me and he seemed like a 21 year old kid too full of himself. Yet the hardware that he had created along with Steve Wozniak had so captured my imagination I could not help but feeling awed by his vision. Steve was impressed with what I had done with the Apple One and he was aware of the fact I was a rising star of the computer book publishing world.

“Mitch come down to our Apple headquarters and I’ll give you an Apple II because THAT is the the computer you need to write your graphics book on about.”

Original Apple Office 1976

A month later I drove down to Cupertino to meet with Steve at Apple’s new head-quarters at 20863 Stevens Creek Blvd, Cupertino Way. He introduced me to Steve Wozniak. I loved Woz, he was a sweet energetic engineer, who at the time seemed to be the alter ego of Jobs. I brought my Apple One with me and he offered to solder the wires to make the second PIA work.  I could see Jobs was driving the design goals but Woz was an engineer who, like my friend Larry Brown, could make silicon chips do magical things. Today people don’t know the difference between PNP and a PIMP, but back in the seventies every one was focused on electronics and digital chips were drastically altering the design of everyday things.

Steve offered me a job running the Apple documentation department. He said today’s computer manuals were crap and if I took the offer I could participate in changing the world. And I would become a millionaire from the founding stock options I would get. I told Steve I was thrilled with that idea and asked if I could start a little later than the other people since the drive from Greenbrae to Cupertino was about an hour on a good day. Steve looked at me with a smirk and said “Mitch look around the office and tell me what you see under the desks”. I saw some kind of dark lump and so I asked him what it was. “That is a sleeping bag. No one goes home at Apple, we work 24/7, because that is the only way the world will get changed. If you work here you have to live nearby.”

That was a huge issue for me. I loved the nature of Marin, Mt. Tam where I hiked every weekend, I had a girlfriend in Fairfax and I just didn’t like the Cupertino asphalt jungle. I know today you read that Steve always said follow your dreams and don’t let the noise of other people confuse your vision, but this was already etched in my mind by the Zen philosophy I had studied, as well as the gurus I followed.  I had paid my dues writing manuals and wanted to be an author, not a manual writer. Plus money wasn’t everything to me, I needed to enjoy what I did and feel I was creating something great. I had already started a company with Larry that sold biofeedback kits, and from that I’d caught the bug of working for myself. Plus I thought one day I might be a millionaire on my own.

Of course had I taken Steve up on his offer I might have been a multimillionaire but whose counting?

So I thanked Steve for such a great offer but turned down the job. He was not happy with me. I already knew that you don’t piss Steve off so I asked if I could write some articles about the Apple as well as my Computer Graphics Primer and he tasked me with doing an article comparing the Apple II to the Commodore 64. I remember him saying he wanted me to slice the Commodore into tiny pieces with a razor knife until it was bleeding. That seemed like a pretty intense and scary analogy.

I never finished that article.

Stay tuned for more Lessons I learned from Steve.

What are the differences between iBird for iPhone and iBird HD?

This document explains the differences between iBird for the iPhone and iBird HD for the iPad. A table below shows the differences as well.

iBird for iPhone

iBird for iPhone is an electronic field guide for birders.  A powerful search engine allows you to identify birds by their attributes (size, color, family, song, etc.).  It contains a rich database of bird species that includes color illustrations, photographs, range maps, bird call recordings, identification information, habitat information and more.  iBird is also an Apple universal app, which means that even though it is an iPhone application it runs in full screen on the iPad.  iBird is the perfect field guide for birds for the iPhone, with the added convenience that it runs in full screen on the iPad.

iBird for the iPhone also has a cool Photo Center feature that lets you import your own photos to the species pages so you can show them off. It also lets you share them on FaceBook or Twitter with your own comments directly from the phone. There is also a spectrographic display of the audio bird calls so you can see lots more information in them.

iBird HD for iPad

iBird HD is an iPad application that contains all of the search features and information from iBird for iPhone. Unlike iBird for iPhone, iBird HD is a native iPad application, so it was designed with the larger screen of the iPad in mind. Therefore it supports multiple device orientations (landscape and portrait views), multiple pop-ups and windows for more information on a single screen and in general provides a better user experience on the iPad. The HD stands for High Definition and refers to the fact the illustrations are 720 pixels tall, which is a format used by large panel televisions.

iBird HD also allows you to compare birds side-by-side, this feature is not available in iBird for iPhone.  This feature allows you to list the attributes of up to three birds side-by-side so you can easily identify differences between the species.

Searching for Dummies

iBird HD also has a more powerful search function since it uses Mitch Waite Group’s SAVE algorithm which stands for Smart Attribute and Value Elimination. This search technology is covered by US Patent 7,363,309 (see Note 1 below) and was developed by myself and Robert Levy, a programmer who was only 17 years old at the time we filed for the patent! To fully appreciate the beauty of algorithm lets first review the search method used by the majority of birding apps including our own iBird for the iPhone.

The simple way to build a search engine is as a series of filters; you pick a characteristic, such as shape and the filter narrows the database to just those birds that match that shape.

You then pick a second characteristic, such as color, and the search engine filters the shape list to birds with just that color. Can you see a flaw in this approach? What if none of the birds in the list of matched of shapes in the first filter match the color you pick in the second filter? You get “no matched birds” as a result. Now this might not sound like a big deal since you can just try a different color until you find one that matches but if you do that you are guessing and guessing can take a long time. Its a messy and inefficient way to search. The problem is similar to the way Google and all search engines work today–you pick a keyword or phase to search and you either get a million links back or you get the message “sorry nothing matches your phase”.

The SAVE Method of Search

SAVE is a method that narrows down the search criteria as you select attributes of the bird you are trying to identify and never gives the “no matched birds” result.

The importance of the SAVE method is you are always guaranteed to find a result, meaning you can’t get a blank screen with “no birds matched.” For example, if you select the shape of the bird as “duck-like”, SAVE will eliminate blue from the list of primary colors, since there are no ducks with blue as a primary color. This is “value” elimination. In the iPad the color values that won’t yield results are grayed out so they can’t be tapped. The other thing the algorithm does is eliminate attributes that won’t contribute to the search results or will give a no matched answer. For example ducks are not backyard feeder birds, so if Duck is picked as a shape the Backyard Feeder attribute is eliminated on the iPad. So the SAVE feature lets you know which attributes will yield search results and which won’t. If an attribute of the bird has been eliminated, then you know that one of the attributes you previously selected may be wrong.

SAVE makes the iBird HD search feature great for those birders who want to focus on identification and is a fantastic teaching tool.

Which One Should I Buy?

If you only have an iPhone and never plan to buy a iPad there is no choice, the iPhone version is what you want. If you own an iPad or plan to buy one in the future you could buy the iPhone version first. Since it will run full screen on the iPad you will be able to see the full size illustrations and photos. However if you are a birder who wants to learn to identify like the experts iBird HD for the iPad would be a good app to buy. Also since it was designed from the ground up for the iPad it has a more sophisticated 3 window display and provides more information on the screen at one time than the smaller iPhone screen. This means less button pressing for you. If you don’t plan on taking lots of hikes were the portability of the iPhone is a benefit the iPad version would also be a good idea. We sometimes refer to iBird HD as perfect for “armchair” birders, as a replacement for  textbook and for those who really want help in learning to identify birds.

Comparing Features of iBird for iPhone to iBird HD for iPad

Features

iBird for iPhone

iBird HD for iPad

Covers Birds of North America

Search Feature

Runs on iPhone

Full screen on iPad

Native iPad Interface

Smart Attribute and Value Elimination Search (1)

Compare Birds Grid

Species Page Features (2)

Photo Center to Import and Share Photos

Song Spectrogram Display

Notes
(1) Smart Attribute and Value Elimination Search or SAVE is a patented parametric search algorithm developed by Mitch Waite Group and Robert Levy. This method of use is covered by one or more of the following patent(s): US patent number 7,363,309 and foreign equivalents.

(2) Includes Illustrations, Photographs, Slideshow, Range Maps, Bird Call Recordings, Identification Information, Ecology Information, Similar Birds and Interesting Facts.

The Pain of Updates: Separating Content from Application

If you ever updated a large iPhone/iPad or Android app you know how painful it can be. How many times have you cursed the publisher of your product because:

  • The connection to the internet dropped or decided to slow to a crawl
  • The App icon gave the message “Waiting” and would not continue
  • The  battery in your device died or the application crashed
  • You ran out of patience waiting for the download to finish
  • The device went to sleep in the middle of the download
  • Your wife yelled at you to change the babies diapers NOW

Customers of iBird–and most likely of other large birding apps such as Audubon, Sibley and others–all have huge apps that occasionally or frequently need to be updated. And when that happens they usually look for the Tylenol before commencing.

Lumps Are Not All the Same Size

Here at Mitch Waite Group we have had our share of suffering customers who let us know they were unhappy trying to update their app. Whether the app be on the Apple or Android platform, the complaints usually fall into one of the categories in the bullets listed above. Why are there so many problems with these mobile device updates? After all when you update a program on  your PC or Mac it’s a pretty straightforward process. In fact most of the time you can walk away and come back later to see if it’s done.

The reason that apps are harder, fall into one or more of these categories:

  • Mobile devices are not normally connected directly to the Internet over Ethernet
  • Mobile devices use WiFi which is often unreliable and slow
  • Mobile devices have slow processors and not much RAM as compared to desktop or laptop PCs so everything takes longer
  • Mobile apps are not well designed for update processes

This last point, Mobile apps are not well designed for update processes, is one that large apps are particularly plagued with. Take iBird Pro – on the iPhone iBird Pro is over 500 Megabytes. That is 1/2 a Gigabyte. Its a lot of space. For example if you have a metered cell phone plan of 200 MB a month and try to download iBird over it you will eat up your entire allotment and be charged for the overages. If you have a 10GB a month plan you will eat up 5% of it with this one download.

Who Do You Love: Apple or Google?

Apple developers with large apps will tell you that they love Apple a lot more than Google (who licenses the Android OS to the carriers) for one big reason. Apple bundles the content of an app with the program itself, puts them in one file and then hosts that file on their servers. Google on the other hand limits the size of the app they will allow to be placed on there servers to 25 Megabytes. There are statements on the web from the last Bootcamp that Google increased the maximum size of an app all the way up to 4 GB. However we have not been able to confirm that. So as a developer, up to now, if your app is larger you must find a way to get around this.

Automagic Downloads: the Bird by Bird Installer

Given iBird Pro’s database is 500 MB we had to come up with a way to handle the Android app size limit. The way we did it was to unbind the database from the application. The way it works is like this: When you download an iBird app from the Market you are basically getting the main application without the database. Once the app is installed you are taken to a screen in iBird where you can download the illustration, photo and sound files (what we call binary data). You are given the option to download all of the content or just some of the content (for example all species which start with the letter A).  We also made it so you can skip doing this download process. In which case when you actually go to a species page in iBird the very first thing that happens is the binary data for that bird is downloaded automagically.

Now if Google has actually increased their app limit to 4 GB would we want to bind the database back to the app and let them host the whole thing for us like Apple does? The simple answer is no. The reason is as follows.

The Benefit of Separating Content from Application

The advantages we get as developers and pass on to our customers when we separate the database from the content are:

  • We can update the database and the user doesn’t have to reinstall the entire app to get these changes.
  • We can modify the app and the user doesn’t have to download 500 MB of data  to get these changes.
  • We can make even tiny or minor changes in the database and the customer can download them quickly and with little effort or interruption.

The negative side of separation are:

  • We as developers have to pay to host the database
  • The place we host the database has to be a fast server so customers don’t have to wait a long time for the delivery

Now that we have discovered the Content Delivery Network MaxCDN who now host our Android database we have solved both the above negatives.

Show me an Example

Here is an example of how we present the separation when the app starts. This shows the iBird Lite app starting up and the message received that a database update is waiting. The customer can skip it for now and do it later if they wish.

But Wait — There is More

As  you can see in the message for this update we added 18 new photos. A link is provided for seeing what photos we have added. You can try it now if  you like:

http://bit.ly/iBird_Lite_db

We used Google docs, specifically a spreadsheet for this list. If we had included more features we could list them here as well.

Mitch

End of the Story?

Maybe not. Stay tuned for more as we continue to advance and improve the database update process.