Should I Add More?

By
On August 13, 2008

 

Did you ever go across an old bridge or step on an old staircase that just seems to wobble endlessly as you nervously rise to the next floor?  Well, that’s how I feel about my iPhone now.  It’s like someone built a very sturdy foundation out of cement, the kind that holds up skyscrapers, and then decided to give access to anyone who wants to play architect so that they could create their own floors and charge money for access.

I have rebooted and re-installed my iPhone more times in the last month than I care to keep track of.  It isn’t one particular application’s fault that my iPhone is no longer that stable foundation it used to be, it’s the combination of applications that makes it unstable.

Let me explain…

Software development is accomplished by using a set of tools to write your own custom code with other pre-written code that may be provided to you by the platform creator (in this case Apple). So, as a software developer, I use Apple’s development environment to write my custom application, invoke the use of other libraries of pre-written code (provided for everyone so we don’t all go writing the same things over and over again), and after much testing and hard work, hopefully, I end up with a stable, working, new application that I can distribute to the masses.

I’m sure that Apple is doing a fine job of reviewing how stable an application is before releasing it to the masses (no comments here please).  But the problem may not lie with that single application, but rather the combined set of applications that you might choose to put on your iPhone.

Case in point, my Tetris game has worked perfectly over the last month, but after installing a free application that put a virtual flame on my iPhone, it no longer worked.  It booted ok, but when it came time to play the game, it just kicked out and went back to the ‘home screen’.  After I fixed that problem (re-installed), I once again had a stable environment on my iPhone, until… I installed Koi Pond, and then fixed that (re-installed) which kept my iPhone stable, until… I installed Jott, etc.

So can I blame Jott?  Koi Pond? The Flame App?  Not really, the issue on the programming side is that they are probably sharing some common pre-written code segment and there may be a memory leak (not allocating or clearing the memory properly in the application).  When the other application is started and tries to access that same memory location on the iPhone, Crash! 

So, it seems that even though applications may work on their own, and even in groups, it only takes one bad combination to make the whole thing come tumbling down.

My advice?  Pick your applications carefully, and try installing them one at a time to make sure you don’t have any conflicts before adding the next one.

Now I just need to follow my own advice!