Nov 2008

Testing Opportunity

Testing an iPhone application is not a simple matter -- at least not very simple. Anyone who wants to help test iSat will need to collaborate with me so we can get the application on their iPhone ...

To allow you to test iSat, I need to know the ‘Device ID’ of your iPhone, then I add that ID to a small collection of IDs that I have registered with Apple as ‘test iPhones’. Once that’s done for your Phone, I can get a small data file back that I send to you along with the test application for you to install via iTunes.

The small data file from Apple allows you to install applications that I write on your iPhone -- Apple, you and I are all connected by this little file -- you rest assured that the application is mine, and I can be assured only people I have registered can use it.

If you want to try iSat, here’s how you can get the Device ID from your iPhone:

To send your device ID to a developer for test-program registration: 
  • Launch iTunes.
  • Connect your device to your computer. 
  • Select the device in the Devices list. 
  • In the Summary pane, click the Serial Number label. It changes to Identifier. 
  • Choose Edit > Copy. 
  • Email your device identifier to the developer. 
Be sure to include your name and device name in the email. 

I’m only able to register a small number of phones for testing purposes so please take this seriously. If it turns out you don’t have the time or lose interest, please let me know and I can drop you from my list and let someone else on.

Your email to me should be of the form:

Name: Dermont Staveacre
Device ID: 91d123123123123123123123123123123e0c
Device Name: Dermont’s iPhone

I’ll send your Device ID to Apple who will add your iPhone to those able to run my application (they’re pretty quick), and I’ll package the file and the application for you to install. More on that process soon.

The Beginning ...

In mid-summer 2008, I started to have this silly idea about writing a computationally intensive application for the iPhone. I started coding in early September and by late November, as I write this, it has reached a state that I can start to talk about it without too much embarrassment! ...

I bought my first generation iPhone a week or two after they first shipped, and joined the iPhone developer program when it opened up. When the iPhone App Store started to ship products I was impressed with the apparent ease of the process as a consumer, but not so impressed with the first round of applications -- many seemed to be the iPhone equivalent of “Hello World.”

My pre-professional training was in Physics and Astronomy, and I’d always been keen to rush outside and watch satellites pass overhead. There were ‘planetarium’ programs on the Mac that included predictions and a few other more specific programs and web pages that offered detailed satellite coverage. A wonderful find a few years ago was
Heavens Above, operated out of Germany with very nice capabilities and interface.

I found myself passing along information about visible passes of the ISS to a small group of interested friends and sometime this summer while doing this I realized that many of us were carrying a moderately powerful computer in our packets most of the time, and that it might be able to show useful information about this.

Frankly, I was dubious about the iPhone’s capabilities. One of the first things I did was to see how well it would cope with rotating a wireframe model of the outlines of the continents and islands that make up our planet’s land masses. The CIA produced such a vector map many years ago, refined over the years -- the version I grabbed contained about 60,000 points. Imagine my surprise when the iPhone seemed to have no trouble replaying that model to the screen more than 20 times a second without any visible hesitations.

Just about everything about this has been a learning experience. Though I had 30+ years of professional programming experience I’d never actually written anything in Objective-C, I’d not used Cocoa, and OpenGL was all new to me, so this was going to be interesting. I had a little more experience with the algorithms related to earth orbiting satellite predictions, but some of that was back when I was a student learning Fortran.