iPhone DevCon 2010

by Marcus Zarra

Just finished with the iPhone Dev Con 2010 in San Diego and it was a very pleasant conference to go to. The organizers definitely have a nice balance and treated the speakers well. I enjoyed the trip and I hope that everyone who attended my sessions got something out of them.

As I promised in the sessions, here are the slides and sample code.

* [NSFetchedResultsController](http://cimgf.s3.amazonaws.com/NSFRC_iPhoneDevCon10.pdf)
* [Importing and Exporting Efficiently](http://cimgf.s3.amazonaws.com/Import_Export_iPhoneDevCon10.pdf)
* [Importing Example Code](http://cimgf.s3.amazonaws.com/Import_Example.zip)

And the ZSContextWatcher is located in our [open source git hub project](git://github.com/ZarraStudios/ZDS_Shared.git).

Thank you to all of the attendees for having me and I look forward to seeing everyone at the next conference.


Thank you Marcus, great stuff for those who (like myself) couldn’t attend. This community is lucky to have you.

Regarding NSFetchedResultsController, could you elaborate on the “Buggy!” moniker? Not that I challenge this statement, but it would be interesting to see what field examples led you to this gloomy conclusion.

Also regarding NSFRC as single-entity observer, what’s wrong in having two NSFRC instances, one watching Person and the other Dog, sharing a common delegate? I’ve used this naive approach in several projects, just wondering if I missed something obvious here (performance? memory usage?)

Marcus Zarra says:

In iOS 3.x it has some bugs with regard to caching and indexes.

Standing up more than one controller can start to get expensive in terms of memory and performance.

When you are using it as it was originally intended it works well and works even better in the 4.x versions. However it has edges and limitations which is what this talk was about.

Marcus, thank you very much for these slides.

In “Importing and Exporting Efficiently,” you give the advice to use YAJL to parse the JSON stream. In an other post from you (in Stack Overflow, if I remember well), I read that you were using TouchJSON.

To sync data with Core Data, why YAJL over TouchJSON? In which way is it better?

Thanks again, for all the information you give back to the community!

Marcus Zarra says:


I have changed my recommendation due to recent experiments. YAJL can be configured to be a stream parser and therefore can consume data faster than a document style parser. I have also noticed a significant decrease in memory usage during parsing with YAJL streaming compared to document based parsers.

diorahman says:

Could you please publish a full example using ZSContextWatcher? I’m a newbie and wanna jump to front seat :-)