Launching an App In Three Acts
Act I: It is done
When we first launched iBank for iPad we were pretty excited. Some of us had been working on it for nearly two years. We used the product ourselves and thought Direct Access, the app’s exclusive new service for automated downloads, was great – especially since it supported WAY more banks than our older OFX system. We loved the app – our new baby – and on the day it went live we were all at the edge of our seats. It soon became clear that something was not right…
Act II: Uh, what?
The app met some enthusiasm out of the box, but reviews like “Nice, but buggy,” “Unusable in current form” and “Crash” also began to appear. We quickly fixed a few issues and this became 1.0.1. Now for this whole time the app was working great for us, so what was going on? We had just one crash report from iTunes (and fixed the issue in 1.0.1). But based on the feedback we should have had a lot more. It was frustrating and disheartening to know that there was a problem only we could fix… and not to know where it was. Slowly a picture started to emerge. People who were having problems were all running iOS 6 beta and/or were syncing from iBank for Mac. We found and fixed the iOS 6 beta issues. But not everyone who was syncing was having the same problem. After much searching we figured out the data files used in our test cases were just too simple, and the data that people had in the real world was driving the app in ways that we did not expect. Almost all of the issues were memory- and threading-related.
Act III: It is done. Again
We went back to the drawing board for some parts of the app to improve the throughput (although we decreased the concurrency) and reduce the peak memory usage. This has been an incredible amount of work and work that we already thought we had done. It was just for a very different usage pattern. Everyone has been hammering away to find and fix performance bottlenecks and memory spikes. In addition, we have all been running on the iPad 1 which performs about half as well as the iPad 2. Now we think that the app is in much better shape and we are ready give it another go. iBank 1.1 is going through testing and will be submitted to the App Store soon. I can’t wait to see what happens – and hopefully it’s all for the better this time around.