I was ready to ship FastFigures Finance Calculator version 2.0 to Apple a week ago. The day before I submitted, Apple announced that all new submissions need to be compatible with their latest developments, but I knew we were not. I had a couple of customers report to me that the calculator and table editor weren’t operational any more.
I knew what the problem was. They were built using standard UI widgets from Apple, but they were standard widgets that were meant to do something else. In other words, I hacked them and just knew eventually Apple would break it. Thought I’d at least get more than three months out of it, though.
I didn’t have enough experience at the time to build my own. I do now. I re-built the text area, blinking blue cursor and was lucky enough to find some loupe (magnifier) code to use for enlarging the area where I’m selecting. It took me two weeks — including an intensive 40 hours over Friday and Saturday and a little of Sunday to get the cursor and loupe integrated and then we all spent countless hours testing.
There are real benefits for writing our own. I can do text substitution now (i.e., insert thousand’s separators) and entry monitoring to make sure the user isn’t entering something incorrectly (neither of which will be in this release). But, to be honest, I’d rather not have done any of it.
I did come to a conclusion, though. If Apple wants us to be compatible with a new developments, they should at least have the courtesy of sending to us a final or near-final version first, either the version they think they are shipping or the one they will. First, my entire endeavor might have been avoided if they fixed the thing that broke my hack.
Second, I found countless bugs (and reported them to Apple) in the beta version — which is by definition full of bugs. How do I know which ones I need to hack around and which ones they will fix? With a final release (or close to it) I will know. I can do a much better job and waste a lot less time if Apple — and any other OS vendor — would help me out. I also have the twin worry of my app being rejected because of bugs in the new development. Do we wait? Do we ship? We opted for ship and pray.
We are all learning together. I hope this goes much smoother in the future.
Good luck to FastFigures 2.0! My relatively simple apps, KnitBuddy and UniSudoku, did fine under 3.0 beta but Apple did get me to buy an iPod Touch to have a separate test device. I wanted to still be able to test 2.2.1 and also was not keen to have my phone run the beta software after previous experiences of being without a phone due to development snafus.
Google Earth did crash pretty badly when I tried to launch it in 3.0 though, so those folks are probably pretty busy too.