Ted Landau writes a cogent article about the wackiness of iPad’s document access weirdness, specifically with the iWork suite. I’m in complete agreement.
This goes beyond just files, though. As I mentioned in my last post apps like Bento and Things have to set up their own little “standalone syncing servers” that you run on a Mac to synchronize/save data. This is ridiculous! MobileMe sync and Core Data (the latter of which already exists in the iPhone SDK) are already well-thought-out solutions for data synchronization!
Even if Apple didn’t expose MobileMe sync (a mistake in my opinion, because it would give another compelling reason to sell its expensive MobileMe web service), they should at least create some means for iTunes syncing to run some basic scripts that could be bundled inside the App bundle. This functionality (sync logic) has been around for ages. Remember the good old Palm Pilot?
Instead it looks like customers will have to either live with ad-hoc Mac syncing services or App providers will have to provide some Internet cloud hosting provision. (Suddenly this makes developers lives hard again. Whereas the App Store was the great enabler, freeing developers from setting up DRM and e-commerce solutions, the app developers will have to return to the world of online data hosting.)
And on that, one last note—while I’m bitching about Apple: their Cocoa API completely lacks any good support for SOAP-based Web Services. Yes, they have a Web Services API, but the experts agree it’s so broken as to be almost unusable.
From Aaron Hillegass, author of Cocoa Programming for Mac OS X, the authoritative introductory text on Cocoa programming:
Let me slip in one last rant: All this stuff is really weak, and that is Apple’s fault. The WebServices framework is quite unusable. NSXMLParser is pathetic when compared to libxml2. These are crucial technologies, and Apple needs to devote serious resources to making them decent, if not brilliant, if they want the Mac or the iPhone to be a great platform for innovation.
Maybe Steve Jobs things that RESTful services are all that anyone should ever need, but if Apple wants the iPad to really be the device of the future, I don’t think they can afford this sort of hubris.