Hiring iOS Developers in the Boston Area

July 9th, 2010

Jonathan Kardos has an excellent article on Boston Innovation explaining how to find a mobile app developer in Boston. NSHappyHour even gets a mention, which is great. But one thing left out of Jonathan’s article are national events such as 360idev.

Speaking from personal experience, attending events like 360idev is a great way to not only meet and network with developers but for developers to find work, whether they are looking for a permanent position or contract work. This is one of the many reasons I return to 360idev event after event, and why I will be at the next one in Austin TX on November 7th through the 10th.




ANN: Hey Peanut 1.2 is in the App Store

July 7th, 2010

I’m happy to announce version 1.2 of Hey Peanut, the photo app for toddlers available on the iPhone and iPad, is now available in the App Store. This update fixes bugs reported on iOS4 and adds new HD artwork for iPhone 4.




Sale Numbers are In: An Update on My App Store Pricing Experiment

July 2nd, 2010

Last month I mentioned my experiment with the pricing for Labor Mate to see what effects, if any, a price increase will have. The initial results were interesting. The number of units sold went down, but revenue had gone up. On the surface it seems the price increase was a success, but I needed more data.

I increased the price of Labor Mate by $1 on May 15, going from $0.99 to $1.99. By increasing the price on May 15, I was able to compare the first half of the month with the second half. And as I mentioned in the previous post revenue had indeed gone up. But I was curious to see if this would continue and what might be the long term effects, so I left Labor Mate at $1.99. After all, I made more money in May as a result of the price increase.

June is over and the sales numbers are in. I’m now able to compare a full month of sales (for June) at the higher $1.99 price to a full month of sales (for April) at the lower $0.99 price. And I can compare these numbers to May’s numbers. The results might be surprising to some, but are inline with what I secretly thought would happen.

In June, Labor Mate earned a whooping $31.94 more money than in April, and it earned $30.90 less compared to May. In April, Labor Mate averaged $35 per day. The average was $37 per day in May, and only $36 per day in June.

Revenue from Labor Mate has been on a slow but steady increase since it was first released back in 2008. Though I cannot prove it, based on past trends, my gut tells me Labor Mate would have likely hit June’s revenue number in May without the price increase. And my gut, again based on the trend, says June would have probably hit May’s number without the price increase. In other words, while the price increase did improve Labor Mate’s revenue, the amount of additional revenue resulting from the price increase is actually no different from the slow and steady increase in revenue I was already seeing at the lower, 99 cent price point. As a matter of fact, I saw a bigger jump in revenue between March and April, with April bringing in a whooping $175.71 more than March.

I’m now convinced the price increase did little to improve revenue, and actually the price increase likely did more harm than good. Prior to the price increase Labor Mate was ranked in the Top 100 in the Health and Fitness category for a number of different countries including the U.S. Today Labor Mate is no were near ranking in the Top 100 in most stores.

Another negative effect caused by the price increase is that fewer people are now using Labor Mate. As I noted in the previous post, the number of daily downloads dropped. This means fewer people are buying Labor Mate, which in turns means fewer people are using it. I believe Labor Mate’s slow but steady raise was due in part to word of mouth advertising. Now that there are fewer new moms and dads buying and using Labor Mate, there are fewer people recommending Labor Mate to other new moms and dads. And I admit, ignoring price for a moment, I’m a little disappointed that fewer people are using the app. A part of me prefers selling at a lower price point so more mom and pops to be will use it. (Hmm, maybe I should release a free, iAd supported version.)

So what’s next? I’ve thought about dropping the price back down to 99 cents, but this could lead to a backlash from the folks who purchased Labor Mate over the last 6 weeks. Plus, $1.99 is still cheaper than a large cup of Starbucks coffee. The better idea, and the one I have been planning all along, is to continue improving Labor Mate and make it stand out above the other 99 cent copy cats. This includes leaving the price at $1.99 for now. After all, as one recent new user said to me in email, “it is a very practical and intuitive app and certainly justified at $1.99.”




ANN: Labor Mate 1.7 is in the App Store

July 2nd, 2010

The latest version of Labor Mate, the best dang labor contraction timer for the iPhone and iPod touch, is now available in the App Store. This update is FREE to existing user. The update includes a much improved UI, compatibility with iOS4 and multitasking, and support for the new retina display on iPhone 4.




Another Test. Nothing to See Here. Move Along.

July 2nd, 2010

I decided to give the WordPress plug-in WP to Twitter a try. My hope is I’m able to write blog posts from my Mac using MarsEdit and have a link to the post auto-magically posted to my Twitter account. This is my first test using this setup. Assuming it works, it will be my first and only test. Here goes.




Hey Peanut Bug Fix Coming

June 21st, 2010

I discovered a bug in Hey Peanut running under iOS 4, which Apple released to the public today. The bug has been fixed. I had hoped to get an update to the App Store before today but I’ve been waiting for the new artwork for iPhone 4. I will be submitting the update to Apple as soon as possible. The bug, for those curious, causes Hey Peanut to crash when you touch the camera icon to add new photos.




Score One for the Little Guy and Kudos to Microsoft

June 14th, 2010

In April I blogged about an issue I was having with Microsoft regarding a questionable past due invoice. I’m happy to report that the issue has finally been resolved. Microsoft owned up to the mistake and will be issuing a refund for full amount paid to the collection agency.

Long story short, the payment I made in December 2004 was applied to the December 2005 invoice. This basically resulted in me getting the first year of service for free, though I didn’t know it. And I never received the December 2005 invoice because it had been paid with the money charged in December 2004. Also, when the billing system was moved from Placeware to Microsoft, a mistake was made to my account which caused the December 2006 invoice not to be sent to me. Because I never received invoices for December 2005 and December 2006, it’s logical to see how I thought the account was canceled after the first year of service, which started in December 2004.

Thanks to the blog post in April, Microsoft did in fact contact me regarding the issue. If not for the attention received by the posting, I would have remained bitter towards Microsoft. Instead, an extremely helpful Julie McNamara-Dahl from Microsoft went above and beyond to get to the bottom of the issue. Julie’s efforts have single handedly restored my trust in Microsoft’s customer service. And best of all, with the help of others at Microsoft, she was able to get to the bottom of the matter and answer my question, “What happened?”

I hate that the matter blew up like this, and I hate that it was something haunting me for years. But in the end, the whole affair proved to me that Microsoft does listen and does strive to provide excellent customer service.

Finally, I want to say a big thank you to Julie and those who helped her. THANK YOU! This matter is definitely closed.




Using UIPopoverController with iOS 4

June 10th, 2010

I ran into an interesting bug today while testing Hey Peanut on iOS 4. For those who don’t know, Hey Peanut is a universal binary, which means it runs on both the iPhone and iPad. My iPhone has the GM version of iOS 4 installed on it, which I’m using to test my apps under iOS 4.

Because Hey Peanut can run on both the iPhone and iPad, my code must include certain checks to avoid crashes. One check the code makes is to determine if the class UIPopoverController is available or not. Prior to iOS 4, this class was only available in iOS 3.2. The current release of iOS on the iPhone is version 3.1.3, and it does not include this class. To make use of the popover I use code such as the following:

   Class popoverControllerClass = NSClassFromString(@"UIPopoverController");
   if (popoverControllerClass) {
      popoverController_ = [[UIPopoverController alloc] initWithContentViewController:[self imagePicker]];
   }

Turns out there is a big problem with this code under iOS 4 causing Hey Peanut to crash each time. It wasn’t obvious to me at first why this code was failing but as I thought it more, and as I talked through the issue with an Apple engineer, I realized, “Duh! iOS 4 is running on the iPhone, not the iPad.” Simply checking for the existence of the class isn’t good enough any more. Instead, I need to also check the device type. So with a quick change to the code, shown below, I was able to fix the crash in Hey Peanut. The code now checks that the class is available and is running on a iPad.

   Class popoverControllerClass = NSClassFromString(@"UIPopoverController");
   if (popoverControllerClass && UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
      popoverController_ = [[UIPopoverController alloc] initWithContentViewController:[self imagePicker]];
   }



Sales are Down but Revenue is Up

June 1st, 2010

A few weeks ago I was having some post-CocoaHeads beers with Jon Trainer and Daniel Jalkut. We were talking about the success I’ve had with Labor Mate. They both insisted I raise the price from $0.99 to something higher. Both had sound reasons why a price increase would work for Labor Mate. For instance, the price range for competing apps range is from free to $9.99. A higher price point will help Labor Mate stand out. Everything Jon and Daniel said made sense, but I was skeptical.

For those who don’t know, Labor Mate is a niche app for the iPhone. It has been in the Top 100 in the Health and Fitness category for multiple App Stores including the U.S. for more than a year. Back in November Labor Mate’s status in the Health and Fitness category started to drop due to two competitors being mentioned in the What’s Hot lists. Despite the drop in rankings Labor Mate continues to sale well, slowly and steadily earning more money per month. A big part of this success comes from international sales, which have steadily improved since translating Labor Mate into 8 other languages. Another part of the success comes from the fact that the app is rock solid. It doesn’t crash, and as one of the reviewers recently said about Labor Mate, “Maybe not the slickest looking app for counting contractions, but we didn’t want to risk crashing or accidentally losing data – we just wanted a reliable app that would work under pressure.”

Even though I was not confident of a positive outcome, I decided to follow the advice from Jon and Daniel. I raised the price of Labor Mate from $0.99 to $1.99. My plan was to leave it at the higher price for a minimum of one week. As expected the first full day at the new price saw spike in revenue. However, sales dropped. This trend continued for the first week. As a result, Labor Mate lost most of its visibility in the App Store’s Top 100 for Health and Fitness. I figured it was only a matter of time before sales and revenue hit an all time low.

Despite what appeared to be a downward trend, I decided to continue the pricing experiment for a second week. To my surprise sales started to return to its normal pattern, a spiky, Bart Simpson-like hair cut. What I noticed was exactly what Jon and Daniel said would happen. I started making more money. Jon and Daniel were right! Sure, daily unit sales were lower than before the price increase, but revenue was higher for those two weeks. So while Labor Mate dropped from the rankings of the Top 100 in the Health and Fitness category and the number of units sold per day dropped, in the end I made more money.

The next big question now is, will Labor Mate revenue continue its slow but steady climb at this higher price point, or will the overall trend start heading downwards? I’ve decided to keep Labor Mate at the $1.99 price for another week to see what happens.

Meanwhile, for those of you who prefer looking at charts, I’ve included the sales and revenue charts for Labor Mate covering the time period between April 1, 2010, and May 31, 2010. There was a spike in mid-April but sales started dropping afterwards. The red-dash line is the first full day at the new, higher price. The spike on that day was almost as high as the spike in April.

20100601-LaborMate-Apr-May-Sales.jpg
20100601-LaborMate-Apr-May-Revenue.jpg




Some Really Useful Xcode Plugins

May 28th, 2010

Xcode is a suite of developer tools for Mac and iPhone programming. Xcode is also the IDE included in the developer tools. As far as IDEs go, Xcode has become my favorite over the years. It’s simple yet powerful. But as good as it is, there’s always room for improvement, so yesterday I asked on Twitter, what plugins do other Xcode developers find useful? Turns out there are a number of really useful Xcode plugins. Here is the list of favorites based on responses to my tweet.

Code Pilot is by far the favorite based on the number of responses I received. Code Pilot provides easy navigation through your Xcode project. If you are a keyboard junkie like me than you owe it to yourself to try out Code Pilot.

Accessorizer is the second most popular plugin. Accessorizer saves you time by generating boiler plate code for you. For instance, you can use Accessorizer to generate the @property declarations based on a set of ivars. Give the Accessorizer Quick Start Guide (PDF) a read to get a sense of what Accessorizer can do for you.

Mogenerator tied for second most popular plugin. It generates Objective-C code for Core Data models. It works differently than Xcode in that Mogenerator manages two classes per entity, one intended for the machine and the other intended for humans. The Mogenerator sites says, “The machine class can always be overwritten to match the data model, with humans’ work effortlessly preserved.” Perfect for Core Data projects. FYI, Mogenerator is an open source project created and maintained by the most-excellent Jonathan ‘Wolf’ Rentzsch.

Completion Dictionary is a free plugin that enhances Xcode’s own code completion. It allows you to define your own expansion macros. You type a few letters and press the completion shortcut. You instantly have new code added to the file. This plugin reminds me of Delphi Live Templates, which I used religiously back when I did lots of Delphi programming. Oh, and did I mention Completion Dictionary is free?

What other Xcode plugins are out there? Which ones do you find useful? Post a comment if you have a favorite plugin not listed here.