Corporation Unknown Logo

[C4 Dealloc]

There’s no way I’m going to fit into a tweet my feelings of Wolf Rentzsch’s announcement of the end of the C4 conference.

Last year was the first I’d managed to go to C4. I was glad I was attuned enough to the community to get into the short registration window; I was overloaded and overwhelmed by the conference itself and the people I met; I was desperately hoping to go again this year.

On the Zeroth Day of iPad…

I realize I’m not the typical iPhone and iPad consumer; I’m perfectly happy to pay a nominal amount for a piece of software. Being a developer, I guess that’s kind of the Golden Rule. But it’s something I’ve felt for a long time: Pay the band a decent price for the music you enjoy and they can make more; pay a developer a decent price and they can afford the time to keep improving it. (That said, I’m perfectly happy to accept promo codes for your apps, even though I don’t have an app of my own right now to return in kind.)

Voices That Matter

I will be attending the Voices That Matter iPhone Developers Conference (attending, not speaking) here in Seattle on April 24th and 25th. If Gus Mueller and Brent Simmons can’t convince you to attend, I can’t imagine I’ll tip the balance by listing the reasons again, so I won’t try.

If for some reason you know who I am but we haven’t actually met yet, introduce yourself and let me buy you a drink. You should be able to stalk me best that weekend by following my personal Twitter account.


Clean Up Your Actions

We all know how to define an IBAction:

- (IBAction) sliderChanged:(id)sender;

For the iPhone, you can even define it without the sender if the method won’t use it:

- (IBAction) sliderChanged;

The annoyance comes when implementing the method—that generic id parameter needs to be cast to the class you usually already know it to be, resulting in either casts all over:

Practical XML Parsing

I presented “Practical XML Parsing” at the September 10, 2009 meeting of Seattle Xcoders. While there is still a touch of the initially intended distaste for parsing XML with DOM, it evolved into more of an overview and brief introduction of NSXMLDocument and NSXMLParser.

After cleaning out large copyrighted material (part of a Justin Timberlake song on the title screen and a Star Wars snippet on the XQuery screen) and removing many of the Keynote build animations I like to use but which translate poorly to static images, I have made the presentation available. I didn’t record the audio, so the text may seem more terse than it really was.

  • HTML export with most of the animations still intact

  • Zipped archive containing:

    • Keynote 09 file

    • PDF export

    • XMLDemo source serving as the examples I showed

Software Illusionist

The only time I ever attended MacWorld Expo, I was working behind the booth for a Mac retailer in the Bay Area. It was a long and tiresome time, without the opportunity to explore the other booths. (I believe RAMDoubler might have been the show hit, to give you a Dark Ages reference point.)

Even behind the booth, I got to meet a lot of interesting people. There were plenty of independent developers even then, and many of them had whimsical titles on their business cards; I seem to recall a “Grand Poobah,” but the one title that made the biggest impression on me was “Software Illusionist.”

Happy Birthday

They say the best gifts are handmade. For my wife’s birthday last year, I came up with the idea to write a simple little “birthday card” application and slip it on her iPhone to surprise her. I scanned in some graphics from a real birthday card and digitally chopped it up and added some animation to give it that true “Made in Flash” feel, and stayed up until 1 AM working to get ad hoc provisioning working on her phone. I even had it register a protocol handler so I could send her an email while she was at work saying “click this link: <happy://birthday> from your iPhone email” and it would launch the application. It was a hit.

Prepping for WWDC

I’m packed for WWDC, and have mowed the lawn so it’s not a jungle when I return. Earlier this week, I began prepping my hardware to have (hopefully) everything I need. There are plenty of WWDC “survival guides” out there—most recently an excellent one from Brent Simmons—and I even tried adding some pointers of my own last year. This year, I’ve noticed some little tips and ideas which may not be obvious; they may be too close to the trip to help anybody else out, but they might help you (or me) next year.

iPhone Development Course

Local Xcoders founder Joe Heck has just announced his 2-day iPhone course/workshop here in Seattle.

Joe has a very solid grip on the topic, and a seemingly boundless desire to both share what he’s learned and learn from others. Writing for the iPhone can be a bit disorienting at first, especially if you’re not already familiar with Cocoa; Joe is an ideal sounding board for questions you may worry might mark you as a “rookie.”

We got a preview of the course at last month’s Xcoders meeting, and I highly recommend it for anyone wanting to get up to speed on iPhone development. (Especially if you can get the discount he mentions in his post.)

My iPhone App Submission Journey

I submitted my first iPhone app to Apple for review on Thursday. The process didn’t go smoothly; there were issues I probably should have known about, and issues that seemed to have been compounded by using my client’s keys to release under their developer account. Now that it’s in Apple’s hands, I feel I should write down the issues and resolutions I encountered, even at the risk of looking like a doofus at times. To be trite, if it helps just one future developer have a smoother release it will be worth it—odds are, that future developer will be me.

Warning: If you are not an iPhone developer and don’t plan to be, you should consider skipping this post. It’s minutia you will never use, and I don’t offer a refund for your time or brain cells spent reading this.