The iOS Development Podcast
Episode 14: 013 iPhreaks Show – Backends
Panel
Ben Scheirman (twitter github blog NSSreencast)
Rod Schmidt (twitter github infiniteNIL)
Charles Max Wood (twitter github Teach Me To Code Rails Ramp Up)
Discussion
01:09 - Backend Experience
01:49 - Connecting to APIs & Synchronization
Windows Azure Mobile Services
iCloud
Wasabi Sync
TICoreDataSync
Buoy Explorer
07:10 - Third-party APIs
OAuth
Instragram
Stripe
11:57 - Parsing
NSXMLParser
NSXMLDocument
Cocoa with Love: Using libxml2 for XML parsing and XPath queries in Cocoa
libxml
18:18 - JSON
RestKit
22:38 - Libraries
AFNetworking
31:02 - Building Backends for iOS Applications
DeliRadio
35:05 - Security
SSL Pinning
Charles
API Keys
Secrets
41:28 - Support Caching
NSURLCache
45:34 - Charles
Picks
objc.io (Rod)
Mackie | Onyx Blackjack 2x2 USB Interface (Ben)
Runscope (Ben)
Daring Fireball: Markdown Syntax Documentation (Chuck)
Next Week
Debugging
Transcript
[This show is sponsored by The Pragmatic Studio. The Pragmatic Studio has been teaching iOS development since November of 2008. They have a 4-day hands-on course where you'll learn all the tools, APIs, and techniques to build iOS Apps with confidence and understand how all the pieces work together. They have two courses coming up: the first one is in July, from the 22nd - 25th, in Western Virginia, and you can get early registration up through June 21st; you can also sign up for their August course, and that's August 26th - 29th in Denver, Colorado, and you can get early registration through July 26th. If you want a private course for teams of 5 developers or more, you can also sign up on their website at pragmaticstudio.com.]
CHUCK: Hey everybody and welcome to Episode 13 of the iPhreaks Show! This week on our panel, we have Ben Scheirman.
BEN: Hello from Houston!
CHUCK: We also have Rod Schmidt.
ROD: Hello from Salt Lake!
CHUCK: I'm Charles Max Wood from DevChat.tv. This week, we're going to be talking about "Connecting to Backend APIs and just Backend Systems" in general. I'm curious, how much of this kind of thing have you guys done in the past?
BEN: That's pretty much the central part of any app that we develop. Most apps aren't really self-contained; it's a functionality. A lot of them required data that's accessible somewhere else. Or, even if you generate the data on the device, usually, people want to access that data elsewhere as well. So sometimes, you can consider things like iCloud, but that's more of an Apple-centric solution if you're billing it out for the web or for multiple platforms, and maybe you would consider building your own API and synchronizing with that.
CHUCK: When you're talking about building your own API, I know that there are these syncing services out there that you send data to it and it does something with it, do you know under what circumstances that would be a good idea versus building your own API that does specific things with the data on the backend?
BEN: It really depends on where, how much focus you have, how much time do you have to build something and where your skill set lies. For folks who aren't server-side developers, building an API is actually a tall order, and there are plenty of solutions out there that will do that for you at the cost of, sometimes flexibility, sometimes data portability, and you're sort of at the whim of the interface that they provide for you.
But there's systems like Windows Add/Removal services, which allow you to just focus on your part - the mobile client portion of it. But they have support for saving data and sending push notifications, that sort of thing. There's also parse and there's just a bunch of others out there that can synchronize data. Some of them are focused purely on synchronizing Core Data models. So there's iCloud Core Data, which receives some sort of a lot of negative press,