Stuart Breckenridge

FATCA Metadata Creator for OS X

Over the weekend, I felt like porting my FATCA Metadata for Windows application to OS X (where, as you know, it becomes an app). FATCA Metadata Creator for OS X is my first OS X app, but in truth, it only took a few hours to move the code from C# to Swift.

Like its Windows counterpart, I’ve open sourced this version of the app, and you can download it from Github (and for free from the Mac App Store).

— Supported by —

Official Battery Pack for iPhone 6s

“Apple today quietly launched a new iPhone 6s Smart Battery Case that will prolong the smartphone’s talk time and internet use by up to 25 and 18 hours respectively (via CNET). The case’s outside material compares similarly to the company’s previous line of silicone accessories, with an added hump sitting in the middle of the backside where the extra battery rests. “

Mitchel Broussard

The biggest pain I’ve felt since downsizing from the iPhone 6 Plus to the iPhone 6s is the battery life. This is an instant purchase for me, which says a lot.

The IBM Swift Sandbox

“The IBM Swift Sandbox is an interactive website that lets you write Swift code and execute it in a server environment – on top of Linux! Each sandbox runs on IBM Cloud in a Docker container. In addition, both the latest versions of Swift and its standard library are available for you to use.”

John Petitto

I’ve had a quick play and it’s great: Swift in the browser! Below is the prime number checker I put together as a little test.

IBM Swift Sandbox — Prime Number Checker from Stuart Breckenridge on Vimeo.

Adding the Git Commit Hash to Your App

When I launch my apps into the App Store, I like to include the git commit hash of that build in the application bundle. It makes it easier for tracking crashes as it can be included in crash reports and in in-app feedback.

My method for including the git hash within my apps is simple:

  • Create a new plist file and call it Versions
  • In Versions.plist add a new Stringkey called Commit
  • Create a new Run Script Build Phase and use the following code:
git=`sh /etc/profile; which git`
gitHash=`$git rev-parse --short HEAD`
/usr/libexec/PlistBuddy -c "Set Commit $gitHash" "${TARGET_BUILD_DIR}/${EXECUTABLE_NAME}.app/Versions.plist"
echo "Updated ${TARGET_BUILD_DIR}/Versions.plist";

Then, if you need to reference the commit, you can access it using the following code:

let commitHash = NSDictionary.init(contentsOfFile: NSBundle.mainBundle().pathForResource("Versions", ofType: "plist")!)!["Commit"]!

Easy. (Look at all those exclamation marks!)

iTunes Connect App Transfer Mayhem

Since late August, I’ve been waiting for several apps to transfer between different iTunes Connect developer accounts. Completion of the necessary App Transfer Agreements, three in total, occurred as soon as the transfers were setup and since then only one app has transferred.

The hilarity to this day:

  • iTunes Connect Developer Relations have extended the membership of the transfer from account five times
  • Twice, however, they forgot, and the apps went into a Not On Sale state until I sent a friendly reminder
  • Ad revenue continues to attribute incorrectly (to the transfer from account)
  • I have to monitor and report sales across two different accounts
  • Development is stalled while the apps are pending transfer
  • I have received many apologies

It’s meant to take three business days to transfer an app. I’m now on day number 95.