Subscribe for weekly commentary and coverage of Swift and Apple platform development. Written by Dave Verwer and published every Friday. Free.

Picture of Dave Verwer

Issue 87

29th March 2013

Written by Dave Verwer

Comment

Happy Friday everyone.

Dave Verwer

Learn the ropes of Mobile Services with Brent Simmons

Mobile Services makes it easy to cloud connect your iOS apps. With Mobile Services, you can store data in the cloud, authenticate users, and send push notifications in minutes. No C#, no Visual Studio, no Windows. Just you, your Mac, JavaScript on the server and Objective-C on the client.

News

The Gathering Storm: Our Travails with iCloud Sync

The iCloud Core Data conversation continues and unfortunately the unrest continues to grow. Rich Siegel has a good, unsensational breakdown of the major issues as well as links to the other notable blog posts on the same subject. Maybe WWDC this year will have some good news on this subject?


Why Developers Shouldn’t Use iCloud Syncing, Even If It Worked

Brent Simmons with an alternate take on iCloud, even if it worked reliably you should be aware of its designed limitations. You are still unable to run any server side code or interoperate with a web app or an app on another platform. I do believe that iCloud should be the definitive sync and backup solution for iOS apps but don’t get it mixed up with a custom built server.

Tools

Drawscript

This Adobe Illustrator extension/plugin from Tom Krcha will generate Core Graphics code directly from within Illustrator. This is similar in functionality to Qwarkee and PaintCode (although PaintCode takes a completely different approach to the problem) which I have linked to before but Drawscript also supports exporting to JavaScript and several other useful formats. Worth a look if you use Illustrator.


AGi18n

Angel Olloqui with a slightly different take on localisation in iOS apps, especially around interface builder localisation. This tool and associated library keep all localisations for both code and XIB files in one place and then the library replaces the XIB localisations at runtime. Slight note of caution with this is that it uses swizzling to intercept awakeFromNib in order to get everything in place so be aware of that before bringing it in.


Musical Chairs

This handy tool from Orta Therox for archiving and restoring your application state from the simulator looks to have been around for a while now but was just recently updated to a 1.0. Worth a look.

Code

Core Text and upper case numbers

I had no idea there that upper case numbers even existed before reading this article by Amy Worrall but I have run up against the same kind of problem with unusual positioning of numbers in certain fonts (I’m looking at you, Georgia). Amy digs into the depths of Core Text font features to enable upper case numbers to fix the problem.


StaticDataTableViewController

Ever wanted to dynamically show/hide cells in a static content table view? Peter Paulis has a solution for you, animated insertion and deletion of cells. The animations look a little funky sometimes with section headers on but this may still be useful if you are facing this problem.


Glimpse

Wess Cope with a small library which uses AVFoundation to record video from the contents of a UIView. The uses of this are slightly limited but I really like the idea so it gets a link.

macOS Development

TextEdit Source

New sample code from Apple this week with the full source to TextEdit from Mac OS X 10.8 being published. I don’t think it’s any coincidence that this includes a implementation of iCloud document sync (but not Core Data sync). Worth a read.

Design

Pixel Perfection

Meng To on the importance of pixel perfection and avoiding fractional pixels in your designs. The article also includes .sketch files with all of the sample designs used. I’m not sure if you have noticed but I have seen quite a trend with designers using Sketch as their design tool of choice recently as well.

Business and Marketing

Purging the Back Catalog

David Smith with a suggestion after last week’s new review policies of automatically removing apps after they have not been updated for an extended period of time. I am not sure I agree completely but I would definitely be in favour of apps which do not support newer devices or that have not been updates in years being right down in the search results.


So long, break-even

I always subscribed to the point of view that the App Store wasn’t so much about revenue itself but about selling devices but with these figures it’s getting to be a very significant amount of revenue on its own.

And finally...

iCloud Debugger

Has Duncan Wilcox found the solution to all those iCloud sync problems?