iOS App Postmortem
Nat!: The project started out on iOS 5, which was quickly succeeded by iOS 6. I would have been extremely surprised at the beginning, if someone had told me, that at the time of iOS 8s release our app...
View ArticleCloudPull Removed From the Mac App Store
John Brayton (via John Gordon): The most significant improvement in the CloudPull 2.6 update is Yosemite compatibility. I submitted this update to the Mac App Store on October 1. Apple rejected it on...
View ArticleCore Data Relationships Data Loss Bug
Tom Harrington notes that several developers (including James Dempsey and Rich Siegel) have encountered a bug with Core Data’s -[NSPersistentStoreCoordinator...
View ArticleEmber and iCloud Core Data
Dan Counsell: One of the biggest challenges we faced last year with Ember was sync. Once you start using Ember, it’s incredibly easy to build up a substantial library - and customers upgrading from...
View ArticleSwitching From Core Data to Realm
Tim Oliver (tweet): Tim Oliver, creator of the iComics app, gave a talk featuring Realm in his project at the Perth iOS Meetup. His talk covered gave a quick background of his transition to and...
View ArticleMac OS X 10.10.2
The Mac OS X 10.10.2 update fixes the Thunderstrike exploit, among other security bugs. (Good luck if you have a Thunderbolt-equipped Mac but aren’t running Yosemite.) It claims to fix Wi-Fi issues,...
View ArticleRecover Data Lost Because of iCloud Sync Problems
Kirk McElhearn: So, there are a couple of morals to this story. First, don’t trust iCloud. I don’t blame Realmac; it’s probably not their fault. I find it interesting that the data loss occurred...
View ArticleCore Data vs. ARC
Matt Drance: 1) Create NSManagedObjectContext 2) Fetch 2) Pass results to a method I’ve seen ARC kill the MOC before line 3. With at-autoreleasepool, you could optimize given advanced knowledge. Now...
View ArticleUsing Core Data With Swift
Tom Harrington: Both Core Data and Swift include the concept of an optional value. But when Xcode generates subclasses, it doesn’t consider whether Core Data thinks the value is optional when...
View ArticleZarra’s Core Data Stack
Marcus Zarra creates a private queue context for writing to disk and a main queue (child) context for all user interaction: To protect our main thread, we call -addPersistentStoreWithType:...
View ArticleWWDC 2015 Links
General: Download Xcode 7 Beta What’s New in Xcode (PDF, comments) Apple Developer Forums (a new set of forums that are viewable without logging in) WWDC 2015 Sample Code (intriguing CompressionSample...
View ArticleCore Data Bugs
Almost four years ago, Dev reported a bug with Core Data’s NSOrderedSet generated accessors (via Ling Wang). DaGaMs, in 2013: I just brought this up with an Apple engineer during one of the CoreData...
View ArticleDynamic Swift
Lee Morgan: We’ll go ahead and extend our KVC protocol and add our default implementation. extension KVC { func valueForKey(key : String) -> Any? { let mirror = reflect(self) for index in 0 ..<...
View ArticleA Eulogy for Objective-C
Aaron Hillegass (comments: 1, 2): The wonderful thing about Objective-C is that it’s so dynamic. As we start moving into languages that are a little bit more uptight about such things, it’s nice to...
View ArticleGit as a Document Format
Wil Shipley: Undo and redo was sort of part of Core Data, but they tried to do it at the lowest level, where any time you changed the database, it just registered an undo event. This turned out to be a...
View ArticleThe Big Nerd Ranch Core Data Stack
Robert Edwards notes that the Nested Managed Object Context Pattern has some cons: Slower than Shared Persistent Store Coordinator Pattern when inserting large data sets awakeFromInsert being called on...
View ArticleCore Data in El Capitan
There are again no Core Data release notes this year, but there is WWDC 2015 Session 220 (video, PDF): Previously you may have used -hasChanges, this was a rather basic dirty flag, if you touch the...
View ArticleThe Story of NetNewsWire
Rebekah Wolf: Still feeling that iCloud would be the best fit once it was fully functional, the product team shifted their focus to developing Kaleidoscope 2 while they waited for Apple to work out the...
View ArticleGenerating Core Data Swift
Human Friendly: There are two [Xcode] generation options, with “Use scalar properties for primitive data types” you get usefully typed integers, floats, doubles and bools but lose the expression to...
View ArticleDouble Core Data Accessors by Omitting @NSManaged
Trevor Squires: If our implementation is not exposed to Objective-C, then Core Data will not find it at runtime, which means that, yes, Core Data will dynamically generate the accessor implementation...
View Article