Your browser (Internet Explorer 6) is out of date. It has known security flaws and may not display all features of this and other websites. Learn how to update your browser.

Posts tagged ‘iPhone’


Beta Testing my App

I am at the stage now where I can beta test my app. So I went to Apple’s developer website to figure out how to sent beta versions of my app to friends, and the instructions there were less than lucid.

I understood the part about getting my friend’s Device ID’s, and creating a new provisioning profile. But things got muddy from there.

I found some 3rd party instructions online, but they mention stuff in the Build Settings in Xcode that I simply don’t have. Grrrr…

I know a few of you are waiting for a copy of my app, so please be patient. I’m working on it!



For the past couple days I’ve had some free time between assignments that have been rather short. So I’ve had a chance to work on my app.

I guess it wouldn’t be that big a deal to reveal that it’s yet another Xbox Live friends app. Back when I though of the idea, there were no other apps like this, honest! But since then, a couple have appeared, and I have wondered if I should just give up on the idea.

I decided to tough it out and complete the app, as a learning experience if nothing else. My app will have a couple things that make it unique, so I think that it’s going to be truly more useful than similar apps out there.

One thing that I’ve done recently is to load up the friends and show them to the user, and only then retrieve the information from the servers about each gamer’s online status. This makes the app come up quicker, and we all know how important responsiveness is.

One of the issues I had was that I was doing the server update stuff on a separate thread. Often after doing the update the gamers’ statuses weren’t being properly reflected. Then I remembered that GUI updates should really be done on the main thread, so performSelectorOnMainThread came in really handy to fix that problem.

Now I’m having a couple problems left that I need to fix.

One, I’m using an image in the detail view, and I used a colour picker to match colours, but it still doesn’t match the colour surrounding it, which is very frustrating. I went to great lengths to make sure the colours matched, but now they don’t. I wonder if the iPhone changes colours slightly when loading a PNG? That doesn’t make any sense, though.

As well, I have a problem where the gamer’s avatar image is incorrect. Tracing through the code, it all looks okay, but I’m sure I’ll find the bug eventually.

So yeah, my first app is one I’ve been working on (and off) for a long while. Now that I have some time on my hands, I hope to complete it soon.

On the other hand, having time on my hands isn’t good for paying the bills, so I’m also looking for my next assignment. Several people have said maybe in January. I realize that December is a bad time to be looking, but that doesn’t help me pay for my kids’ Christmas gifts!


iPhone Developer Profiles @ Mobile Orchard

Mobile Orchard, a great iPhone blog, has started a profiles section. You can add yourself as an iPhone developer, you can endorse others, and hopefully others will endorse you as well.

I’ve created a profile there , but I don’t know if I’ll get any endorsements because I know so few people in the iPhone world. We’ll see.

At any rate, I thought it was a good idea and I’m giving it a try. We’ll see how useful it is as time moves on.


Promotional Codes are in, Still no Demos

According to MacRumors, developers can now issue 50 promotional codes for their iPhone applications. So as a developer, you can give out 50 codes for people to download your app for free. This means that people like those at Veiled Games don’t have to send review sites money anymore to cover the cost of purchasing their games.

This is great news for those who want to promote their apps to review sites and journalists. But it doesn’t solve the problem of demos. Many developers want to have demo versions of their apps with unlock codes that’ll allow people to use all the functionality of the app. This is not possible today. Instead, developers have to issue two versions of their apps to the AppStore.

Either way, this doesn’t affect me yet. I’m doing custom iPhone work for others who have to worry about publishing to the store. And my first app is going to be free, whenever that is!


Chewy Apps on Twitter

If you use Twitter, you can now follow Chewy Apps through “chewyapps”. That’s thanks to a cool utility called TwitterFeed which takes any feed and creates Twitter tweets out of it.

Also, I had a couple interviews on the weekend for iPhone development jobs. I think I did well. Both of the opportunities sound excellent, and if they both want me I’ll have a very hard time deciding which one to take.

That said, nothing’s ever a sure thing so I’m still looking around for iPhone programming jobs. It looks more and more like contracting will be my future, which is weird because I’m so used to being an employee.


Contract Expires Early

Two months ago I signed a six month contract to do iPhone and Mac development. My first project would be an iPhone one, and my second would be a Mac project that they were pursuing. So the iPhone project is now coming to a close, and yesterday I got called in to the HR department. I was told that other iPhone contracts they were pursuing didn’t materialize, and that they’re giving me two weeks notice.

There was only one other permanent person working on this project (an employee, not a contractor), and he had no Mac/iPhone/Cocoa/Xcode experience whatsoever. I was the prime developer in everything but name. I did almost all the GUI for the whole project, and much of the guts as well. They are quite pleased with my work. So to be dropped this easily is a bit unnerving.

But they said that they’re pursuing other opportunities, and that if one of them gets signed, that I’d be working on a Blackberry project after the iPhone one is done. That’s all very nice and good, and I have nothing against the Blackberry, but I didn’t sign up to do Blackberry work. I love working on the iPhone! While I’ve learned a lot that about iPhone development during my time here, there’s still a lot more to learn. I want to continue expanding my skillset on the iPhone and want to become an iPhone domain expert. That said, learning a new platform like the Blackberry wouldn’t be that bad.

But most of all, I have to wonder why I bothered signing a six month contract in the first place. What good is it to sign up for six months, only to be let go halfway through the term? I’m relatively new to the world of contracting, this being my second contract. So far it’s been quite a turbulent ride, with more downs than ups. I guess this is all part of the learning process.

So anyway, now I’m now looking for work iPhone or Mac development. My resume is here.


How Much is an iPhone Developer Worth?

The author of this article at O’Reilly says that in his experience, good iPhone developers are making $125/hour doing contract work, sometimes more. And that because of how lucrative selling apps is, many contractors are forgoing contract work altogether in favour of creating and selling their own iPhone apps.

He rightly points out that in this market, ideas are worthless. I’ve seen this in software development before – an idea, all by itself, is worth nothing, and it’s the execution of the idea that matters. The author of this article says: “I am someone who is highly motivated by ideas. So, it pains me to say that the value of an iPhone application idea right now is pretty much zero. A great idea isn’t worth anything under these conditions. There is no shortage of great iPhone ideas, just a shortage of talent to bring these ideas to market.” For someone like me, who doesn’t seem to have a creative bone in my body (kidding!), I think that ideas are worth slightly more than that. But not much.

Which brings me to my point. I see lots of people offer to work with a developer and split the profits 50/50. In this market where a developer’s time is so precious, I hardly think that this would be any motivation for a developer at all. The idea person gets half the profit and the person that does all the work gets the other half? Hardly seems fair. Especially given the fact that the split isn’t actually 50/50. It’s 30/35/35. That is, Apple gets 30%, the “idea person” gets 35%, and the person who creates the app gets 35%. That’s even more unbalanced.

As an experienced developer who’s now doing iPhone development, I don’t see any iPhone devs making $125/hour. Maybe I just don’t know where to look? I’ve been looking for good telecommuting iPhone jobs, and they’re hard to find. I’m starting to be open to finding someone who is willing to offer me a true 50/50 split (that is, 30/20/50). But I still think full time/contract work is what I want.



Icon Optimizations

Sorry that I haven’t been posting much recently, but I haven’t been doing much! I started a new job recently doing full time iPhone development, so my personal project kinda fell by the wayside. I hope to pick it up again after my vacation, but I have been doing a little bit of work.

My list of friends includes an avatar icon for each of them. These are downloaded from the web, which takes time. So I decided to cache them locally on the iPhone, and while the performance improved a bit, it didn’t improve as much as I’d hoped. The next thing I need to do is only store one version of an icon in memory at once. But this will only help if more than one friend has the same avatar.

Another optimization I did was to load the avatar right away in the init… method, instead of putting a placeholder there and replacing it. (Which is what the SeismicXML sample, upon which my app is based, did.) This gave a large performance increase, which I was pleasantly surprised about.


Got my App on my iPhone!

Exciting days! This weekend I finally got my app running on my iPhone. It took a while to get accepted to the developer program (due to a lost email) and then I had problems getting my app working on my iPhone that were solved by upgrading to the latest SDK.

But now I have my app working on my iPhone and it’s sweet! It’s so cool to see something that you’ve only seen working in the emulator working, and working well, on the iPhone.

Well, except for one thing. It’s slow. Slow as in I don’t wanna use it slow. Now, it’s the debug build, so I’m hoping that the release build is quicker. I haven’t tested it yet due to various reasons, but I’ll be able to do so once the XML data service I rely on is back up and running. I’m crossing my fingers. Either way, I still think I need to add a spinner when the app first launches, to show that I’m working on getting the data. I also need to handle the absence of the data service better, instead of just crashing! :)

Edit: When the service I rely on stops working, my app just quits. (I still have to fix that.) I noticed that with the release build, it quits much faster! That’s a good sign, I hope. :)


TouchXML for the Win!

Last night I implemented saving and loading of the friends list. So now my app is actually useful! I used XML as the file format, because it’s so easy to use and read. Writing the file was easy enough, I just built up an NSString and wrote it out. Reading the file, though, was a different matter. I had previously used the XML reader as in the SeismicXML example, but frankly I didn’t like that method. It was a big pain in the butt. What I wanted was something like NSXMLDocument, which isn’t available on the iPhone. Luckily some wonderful dude created a look-alike library in the form of TouchXML. And some other wonder dude wrote up a RSS tutorial using TouchXML. So after all that, actually reading my XML file became a much easier thing.

Next step? I have lots of little things to do, even now that the basic functionality of my app is working. But I think that maybe now I should actually try to put it onto my iPhone and make sure it works there, and not just in the simulator.