Once a product developer, always a product developer, simply because the excitement never ceases at Flip, if you're a product developer!
Having completed the basic product cycle for Naviflix, we, the product development team, were back to the drawing board for the next app. This time, the focus shifted from iPhone to iPad. The team spent the first few days testing the capabilities of Apple's most exciting device in recent times, and one that is amazingly fast and performs even better with ramped- up memory.
The following week was all brainstorming until we decided that our next iPad app would be a RSS (Really Simple Syndication) feed-reader for iPad. It was time to outline the features and development strategy. There was general agreement for our RSS app to include
- Google Reader feed import support,
- Multiple profiles,
- Theme support and theme catalog,
- Feed catalog, and
- App engine for serving feeds.
The next challenge was to design the UI and the interaction, where our priority was for a user to never take hands off the device while using the app. We made an interesting observation when designing the UI – the thumb is used significantly more when holding the iPad than when resting it on a surface. It was based on this user interaction discovery, that we named the app 'Slide Reader'.
After the first few rounds of developing wireframes, we finalized the following ones.
Past experience taught us that there's nothing like developing a quick prototype for the wireframes instead of starting with the build right away. For most client projects, we neither have the luxury nor the time to create prototypes. In the case of Slide Reader, though, prototyping helped us learn a great deal about the flaws in our design, the limitations of the device and performance-related issues. We could also estimate the performance of the UI skeleton and its memory usage with heavy theming capabilities. The final working prototype looked like this.
With the prototype in place, the next step was product development, but not without it's share of hurdles, best described here.
- Using Core Data. Because Core Data is an object database, performing bulk operations is memory intensive, and multi-threading, even more painful. Achieving optimal results meant we had to rewrite some of the routines a few times over.
- In creating the prototype, we realized we were unable to use any of the components that shipped with the standard UIKit iPad SDK, and ended up building most of the elements from basic views.
- Testing with a large collection of feed items (around 10K records), triggered memory-related issues and slowed down the orientation animation to a distressing speed. The main culprit was the many objects that we used to display feed items. To eliminate this problem, we used elements with proper reuse methods – create the necessary objects and then destroy them.
- iOS notifies orientation changes only for the first view attached to the window. However, our design had multiple views attached to the main window. We devised our own notification methods to get things done when the app is viewed in different orientations.
Truth is, the list of problems seemed endless but there's no joy of achievement without challenges to overcome, right? Tiding over the assorted hurdles provided a great opportunity to learn from every mistake we committed.
Getting closer and closer to the finished product, it was time for frenzied QA activity with a whole two weeks of intensive internal testing to get Slide Reader ready for the app store.
Finally, the first version of Slide Reader released at the app store on August 6, 2010, a great day for us and one we're not likely to forget anytime soon. Post release saw heaps of suggestions and improvement requests from users. It seemed everyone wanted to have their say... a good thing because so many were interest in our app. The most important and doable requests were duly included in subsequent releases.
We've managed to create a fair buzz among users and critics alike and the response is indeed encouraging.
If Slide Reader has done enough to arouse your curiosity by now, I suggest you get started with this quick and handy how-to video of Slide Reader.
To know everything about Slide Reader, visit www.slidereader.me