The Once-Per-Year Deal at Tapstream
Get Tapstream's Advanced+ tier for 50% off, including a bonus: unlimited Onboarding Links and Word Of Mouth campaigns for six months. Valid till the end of 2014 but only to the first 100 signups.
WatchKit Beta 2
David Smith on the release of Beta 2 of WatchKit. He writes about the new communication features which allow apps on the phone to be launched by the watch. If you want some code samples on how to achieve this then Natasha has also written a detailed article on how it all works.
HockeyApp Joins Microsoft
This is an interesting and unexpected one. This kind of acquisition by a large company like Microsoft has a bit of a bad track record of success but I'm going to remain hopeful that with Microsoft being much more open to other platforms these days, that this won't be the end of Hockey on iOS. Congratulations to everyone involved!
Debugging: A Case Study
The latest objc.io was published this week and as always, it's a good one. This article by Peter Steinberger was my favourite from this issue though, it's an in depth investigation into a specific bug in PSPDFKit and is fascinating to read. Daniel Jalkut also has some great tips on the same subject which he published this week.
Custom Operators in Swift
Nick Hanan goes over some of the intricate details of how operator precedence and associativity work when adding custom operators in Swift. I'm still a bit hesitant on operator overloading which was the subject of Nick's previous article. However, if used carefully they can really increase the readability of your code.
We need a “Safari view controller”
What a great idea from Bryan Irace! With all of the ground work Apple has done with extensions in iOS 8 of allowing apps to securely present a view controller in another app this seems entirely possible. It feels like every app that has an in-app browser has implemented it ever so slightly different. It would be great to have that consistent Safari feel and this would make that easy.
Now that we can pass data from the watch to an iOS app this library might seem less necessary but it still has a place. This library enables JSON message passing between app and extension as well as supporting realtime change notifications. There's an excellent demo on the Github page. There's also a good discussion on the Apple Developer Forums of where this library fits in terms of communication between an app and a WatchKit extension.
Developing Keyboards for iOS
Norbert Lindenberg gives us a good overview of the pitfalls with developing a custom keyboard for iOS 8. Some very interesting edge cases are covered in this article such as the fact that you can't create a keyboard for only the iPhone or iPad, it must be universal. Restricting the parent app to iPhone for example will still allow the keyboard to be installed when running the iPhone app on the iPad. Worth a read just to see what goes on when developing third party keyboards.
Objective-C's Designated Secret
This article from Tim Ekl explains how the compiler feature of designated initialisers added to LLVM has worked its way into Objective-C and Swift. It's interesting that with Objective-C you need to opt into using designated initialisers and, in a way, with Swift it's been flipped and you need to opt out. Tim does an excellent job of explaining so it's well worth a read.
Designing For Apple Watch Before It Even Ships
David Hoang on approaching the design of Watch apps before we have devices in our hands (on our wrists? 😎).
Business and Marketing
Lessons Learned from Running an iOS Consultancy
Kyle Richter with a two part article about running a successful iOS agency. There's a load of great advice in here and some interesting stories too. It's in two parts so don't forget to read the second post as well.
PDFpen Paid Upgrade Path
I'm not sure Apple are ever going to offer paid upgrades in the App Store but Smile Software have come up with a clever little workaround taking advantage of App Bundles to effectively give a discount on their new version of PDFPen 2. My only concern is whether this will cause confusion for some customers.
iOS Developer at ForeFlight (Houston or Austin, TX)
Engineer the App Store's #1 aviation app.
iOS Developer Extraordinaire - Expensify, San Francisco
We're looking for talented iOS developers to help scale out our app.
iOS Engineer - Centralway - Zurich, Switzerland
Join us in shaping the future of mobile banking.
Apple's first employee
The remarkable odyssey of Bill Fernandez.
It's been a tough week for the App Store. We've been through rough patches similar to this before and while I do still trust that their intentions are good, the risk in developing interesting apps around new iOS features will hurt the platform in the long term. When Apple is not clear on the rules, or when they change their mind, it means that developers will start to stick with the safe options, and that's not good for the platform at all.Dave Verwer