Sep 26

Is the development of a stand alone iPhone application a viable model to run a business on? I tend to wonder. With the current state of the App Store, the inability to quickly, easily and effectively find an application that might meet your needs, the difficulty of the developer to get it in front of the user, the reliance (and ultimately the bottleneck) of waiting on approval that can take weeks or months, can you run a business that does nothing but write iPhone applications? Maybe, if you are one of the top 5% who happens to really nail a market and appear in the Top 5 repeatedly, but that’s not going to be many of us (even those who do write an awesome app). My feeling is, you had better enter the iPhone market as a complement to a primary business strategy. Almost every app I use on my phone (save for the couple games I play) complement a service I have already used. Evernote, Instapaper, Netnews Wire, Twitter, Facebook, etc. All of these applications do not require an iPhone to use, but having the iPhone Apps make the experience significantly better. My current feeling is to make iPhone development worth it in a financial sense, it needs to be a value-add to a current service you already provide. Using the iPhone to enhance an existing experience will make the existing service more profitable.

Tagged with:
Jul 28

I’m working on an application that requires switching from a List View in portrait mode into a Cover Flow View when the device is rotated into landscape mode. This means, a Controller needs to know when a rotation has occurred and present the correct view. This was my first opportunity to play with Notifications.

  1. The Device generates these notifications on request. So, the first thing we need to do is tell it to start generating them.
  2. The Controller has to register to listen for these events.
  3. A Selector is provided as a callback when an event occurs.

Here is the code snippet that manages this:

- (void)viewDidLoad {
    [super viewDidLoad];

    [[UIDevice currentDevice] beginGeneratingDeviceOrientationNotifications];    
    [[NSNotificationCenter defaultCenter] addObserver:self
           selector:@selector(deviceDidRotate:)
           name:@"UIDeviceOrientationDidChangeNotification"
           object:nil];    
}

- (void)deviceDidRotate:(NSNotification *)notification {
    UIDeviceOrientation orientation = [[UIDevice currentDevice] orientation];

    if (orientation == UIDeviceOrientationLandscapeLeft ||
                      orientation == UIDeviceOrientationLandscapeRight)
    {
        NSLog(@"Sideways");
    } else {
        NSLog(@"Portrait");
    }
}
Tagged with:
Jul 02

Garage development is back. The days of two guys staying up late, hacking away at code with dreams of fortune and fame are back. No longer do you require a $50 million budget to make a AAA title that will scarcely make enough money to pay back the development costs. Enter the iPhone, our savior of development. Now, anybody can throw their hat in the ring and barely make enough money to pay back development costs. But, this time development costs are very low!

This blog will chronicle my journey down the development of simple iPhone applications. As I learn, I will log it here. Including setting up and educating myself on the tools, Obj-C, Cocoa Touch and anything else I find along the way.

Tagged with:
preload preload preload