CardioTrainer v2.4: Move Your Bot, Autostart and Debugging at 30,000 Feet
June 14th, 2010The recent release of CardioTrainer v2.4 was a particularly bumpy experience for our team, but we wanted to share a bit about what was going on the behind the scenes to help explain some of the problems and how we tackled the issues. Every day is a new adventure, especially these few days (May 17-21) because half of our engineering team was in New York while the other half was at the Google I/O conference in California. We are constantly learning about new ways to deal with problems and keep our users happy and informed, so a very special thank you to everyone for your patience and help. We can’t do it without you!
Very early Tuesday morning, after a long weekend of coding, testing, and reviewing, CardioTrainer v2.4 was uploaded to the Android Market. Since Mark and Artem had a 9AM flight to California for the 2010 Google I/O conference, the team was working under a tight deadline to have everything done before they had to leave for the airport. After the update was finally released around 1AM, there were reports of issues with Android 1.5 devices. Mark stayed up fixing the bugs and pushed out another update right before he and Artem took off for the airport at 7AM. When the rest of the WorkSmart Labs team arrived later that morning, the support email account was filled with messages from frustrated users who couldn’t open the application or find it on their phone, and others were reporting that the application’s size had ballooned to almost 10MB. There were still issues with the latest release, and the unexpected problems would require some immediate attention to figure out what was going wrong.
Armed with Skype and an in-flight WiFi connection at 30,000 feet in sky, the WorkSmart Labs engineering team held a virtual meeting to discuss the problems. With two engineers in New York and two in a plane en route to California, they discussed the issue and soon found that new copyright controls had been accidentally activated when the application was published. This had inflated the size of the application, removed the CardioTrainer heart logo, and changed the name to “com.wsl.CardioTrainer.BeforeBeginActivity.” For some people, it was impossible to open the app because it would keep force-closing. The copyright settings were adjusted on the Android Market, but this wouldn’t help those who had already downloaded version 2.4; getting it fixed for everyone else would require pushing another CardioTrainer update to the Market.
In general, developers try to be strategic about releasing updates to their application. Frequent updates can be frustrating for users, and can also go unnoticed if the Android Market doesn’t send out notifications about the newer versions. Sometimes unplanned updates are unavoidable, but the goal is to minimize these situations as much as possible. Luckily, we have lots of enthusiastic and dedicated users who are eager to help us debug CardioTrainer problems, and this allows us to test fixes without inconveniencing the majority. We commissioned help from some people who had reported problems, sent out test versions of the application, and waited for the feedback. Soon everyone reported back with good news: the new fixes had worked, but with one unfortunate side-effect: their workout history was gone. It turns out that if you updated from v2.4 to v2.4.1, the change in copyright settings forced the application to clear it’s user information, but updating from v.2.3.1 to v2.4.1 wouldn’t cause any problems.
If you’ve been exercising with CardioTrainer, you’ve probably had that satisfying feeling of accomplishment when looking at your workout history; it’s an awesome overview of how many calories you’ve burned and how active you’ve been over the past few days. You might have also had the frustrating experience of losing your entire workout history when switching to a new phone or resetting your device. While it’s possible to back up your tracks to your SD card, the ultimate goal is to have two-way sync between the CardioTrainer website and the mobile application. Our team hasn’t had the chance to fully develop this system yet, and it’s always painful for us to hear that workout histories are being lost. Unfortunately, we didn’t have any choice but to stomach the issue as an unforeseen and unavoidable circumstance for some users. The good news is that the CardioTrainer v2.4.1 update on Tuesday evening should have fixed most of the reported issues. Additionally, after more brainstorming and testing, a new version of Move Your Bot was also released on Wednesday to resolve the Facebook problems and added a couple more features. The whole process was a delicate balance of development, testing, fast research, tough decisions and cross-country communication.
Despite all of the work getting the unexpected bugs fixed, we’re really excited about everything included in the latest version of CardioTrainer. We’ve updated the home screen design and introduced the Move Your Bot game. Move Your Bot is designed help motivate everyone to exercise and use the rewards from that exercise inside the game. We have also added an Autostart feature that makes it even easier to record a workout: open CardioTrainer, click “Start Workout” and the application will automatically start counting down, eventually announcing “3, 2, 1, workout started!”
We are definitely aware of the many things that are still in need of improvement, but as always, we just ask that everyone be patient as we move forward with development. The feedback over the past few days has been incredibly helpful, and we can only hope that it continues as more features and improvements are released. Please continue to share your ideas, and be as specific as possible when reporting problems. All of this will continue to make it easier and more fun to exercise and be healthy, with a little help from CardioTrainer.


