Categories
iPhone app

myNestEgg v 1.3 released

Reading Time: < 1 minute

Last Updated on November 24, 2010 by omaha

This is to fix a show stopper problem in v 1.2, as pointed out by one of the users. The problem happened after a user used the keyboard to input data (dismiss the keyboard by tap background), the app will add a comma to “beginning savings” and “salary”. This causes confusion and mis-calculation down the road.

The problem is fixed now in v 1.3. The user needs to update the app to get the fix. In some cases you may need to re-enter the “beginning savings” and “salary” if those numbers are no longer correct in the app. Please let me know if you have any problem.

I am sorry for the inconvenience it may have caused, and wish all a good holiday.

Categories
iPhone app

The first bug reported for myNestEgg v 1.2

Reading Time: 2 minutes

Last Updated on November 22, 2010 by stlplace

This morning I received an email from a user saying that the app stopped working. After one round of back and forth, I realized I shipped the product with a serious (show stopper) bug: I was playing around with adding a comma separator around the time I made change for v 1.2, and I left the code there when it shipped. Now I break pretty much everyone’s nest egg if they run the updated (v 1.2) app.

myNestEgg_bug_1

This little incident again illustrate the thing I mentioned last week: testing

and another topic I would like to talk some time later: source code control.

Luckily, the fix was relatively easy: I comment out the code where I put in “exta comma” for numbers. Because the app persists the number to the file system, I need to do some String manipulation in Objective C (basically remove the extra comma) when reading from the file during app loading. Here is a StackOverflow discussion thread I followed on this topic.

BTW, the user has entered the opportunity to win the $25 Amazon gift card, as I said a bit earlier.

PS: it appears the ratios (saving progress; income ratio) are still correct in those cases, despite the error of dollar amount. Note the ratios are more important in reality, though I can understand the dollar amount are more important in most people’s mind.

PS 2: it’s interesting to see sometimes, when things are broken, it started to get attention. This reminds me a story in which an app got a lot of “ad click” because the useful data feeds were broken, and all the user can see is the Ads.

Categories
iPhone app

Software engineering 101 for iOS app development: I

Reading Time: 2 minutes

Last Updated on April 16, 2011 by stlplace

I thought this for a while, when I was in the Voices That Matter iPhone developers conference, I have seen the great interest from iPhone app developers, from indie developers (individual or small team development shop), to high school teacher who taught self programming and teaches kids on iPhone programming. They come from different background, software consulting, development, education, authors. Being from enterprise software development background and have created iPhone app on my own time, I think I can share some of my thoughts on “applying software engineering principle to iPhone app development”. Hopefully this can shed lights on the best practice of iPhone app development, and ideally those thoughts can be applied to software development on other areas as well.

The No. 1 thing I want to talk is testing. Why we need to test an iOS app?

As my old C++ professor said in the class: a program is a novel if it does not run as expected. We always want to test the software (aka app) if it’s a bit complicated and takes some time to develop. For simple iOS app sometimes we would just skip the formal testing process, and in some cases we just assume it works. I learned the lessons the hard way recently.

1) After I uploaded the binary via iTunesConnect, I found some problems with the app. So I rejected the app, fixed the problem, and uploaded it again. I did this 3 or 4 times in one case. After the last upload, my app was end up in “Upload received” status but did not automatically move into “Wait for review”. Waited anxiously for a few days. Finally I googled and found this article on StackOverflow and followed the instruction to contact Apple, waited for a few more days, and it got resolved eventually. Had I tested the app more thoroughly, I would not have to go through all the pain and the app would get reviewed soon.

2) More recently, I added a feature to the app and tested it on iOS 3.1.2. After it being released, I tried it on iPhone 4, and I found the feature does not work. Ouch.

How to test?
Ideally we should have a test suite and automatic test. But we don’t live in an ideal world. As I minimum, I would test the following:

Categories
iPhone app

myNestEgg 1.2 released

Reading Time: < 1 minute

Last Updated on November 6, 2010 by omaha

Known problem in version 1.2
(11-21-2010) I received a user bug report this morning: the calculation results is not right due to the extra comma separator in “beginning savings” and “salary”. I fixed the problem this afternoon and submitted the binary (version 1.3) to App store. Stay tuned.

myNestEgg_bug_1

What’s New in Version 1.2
1) Add new icons for the tab bars (the 3 bars at the bottom);

2) Add “shake” function to “Settings” tab bar. When at “Settings” tab, if the user shakes the phone gently, the rates will reset to default values: 7% annual investment return, 2% annual inflation. Note the user still needs to tap “Set Rates” button to make the rates take effect.

3) Fix the minor problem where the inflation rate picker moves when the user switches to the “settings tab”. Note this behavior has not affected calculation results.

I just found a bug shortly after the release. If someone reports the problem to me, he/she will have the opportunity to win the $25 Amazon gift card.