rounding bug amendment
When I went to be early this morning, it didn’t take long before I realized that this denominator display bug could be elsewhere. After a few fitful hours of sleep, the kids got me up and, after making them breakfast, I fired up X-Code. While they were coloring and playing Legos, I ran a couple of tests … my heart sunk. Sure enough, this bug was in the trig functions, the block functions and a few other places.
The good news was that this bug was easy to identify and fix, now that I knew what to look for. More unit tests were added, simulations ran and everything passed. A new beta (1.2.0) was spun and went out to the beta testers (you guys are great!).
Also, I rejected the binary submitted to Apple earlier this morning and put up this new one. It will still be version 1.2 … I didn’t want to fight the App store versioning glitch that got me last time. Since so little time has elapsed, I doubt there will be any negative impact to the time it takes to approve this version.
The irony is that this bug was caused by an effort to assure compliance with how the CMP handles denominators for some of the more obscure situations. Once again, no good deed goes unpunished.
The more important question: how to get more confidence that there are not other bugs like this? All but one of the bugs found since 1.0 have been a result of either not having an undocumented function or trying to emulate an undocumented function. The exception was documented in the workbook so I have to take blame for it – finishing the unit tests based on the workbook examples is now the highest priority. The lesson here is that unit testing with documented test cases only goes so far. To have higher quality code earlier, more beta testing is going to be needed. The beta testers have been super so it isn’t a lack of effort on their part. Rather, I am starting to believe that more beta testers are needed. The more eyes using BuildCalc, the more variety of test cases and scrutiny.
If you’re interested in being a beta tester, just drop me an email. You’ll get bug fixes as soon as they’re ready and you will have the chance to influence the direction BuildCalc takes.