Sponsored Link
Add features to your app that'll keep your users coming back
Trusted by over 150k developers, Pusher's APIs make it easy to build interactive features that bring your app to life. Add in-app notifications, chat, live dashboards, or multi-user collaboration, in minutes with just a few lines of code. Get started for free.
News
Changes to the iOS 11 location-sharing bar
The first four iOS betas included a blue bar at the top of the screen whenever an app was using the user's location in the background. Whether this was a bug or a feature, this behavior has now become an opt-in setting for developers who want to make it easier for users to return to their app. I almost liked the idea of this bar shaming apps that constantly used location data, but I can see how it would be harmful for apps that need this information (e.g. Dark Sky).
Swift 5: Start your engines
The Swift team is no longer accepting proposals for Swift 4, which will be released this fall, and is now looking toward Swift 5. One of the main priorities for Swift 5 is ABI stability and although this was also a goal of Swift 4 (and 3!), they have now stated that it's a requirement of the release for Swift 5. If you want a quick recap on what ABI stability actually means (which you might, as a lot of people get this wrong!) you should recap on the ABI Stability Manifesto.
Code
Managing Temporary Files in Swift
Temporary files are a pain to deal with, and if you don't take care of them correctly you can end up with gigabytes of cached images and videos, which isn't the best use of space on a 16GB iPhone. Victor Pavlychko introduces an interesting solution to this problem – tie these files to the lifecycle of a container object.
Mental models in API design
Users don't always expect things to work the same way as the developers who created them – this is true for products as well as API designs. Analyzing the String model in Swift 3, Ole Begemann points out ways in which this API goes against the expectations of third-party developers (a large factor in the String redesign in Swift 4). API developers, take note! 🤓
Local Receipt Validation for iOS in Swift From Start to Finish
Andrew Bancroft with a great 7-part series on receipt validation in Swift. Looking at this post, I didn't realize how little I knew about receipt validation – what in the world is a PKCS7 container, anyway? Should receipt validation be this complicated? Probably not, but until Apple helps to simplify the process this series should be your new reference.
iOS 11 Password Autofill
One of my favorite little features announced at WWDC 2017 is the new password autofill in third-party apps. Luckily for developers, there are only three easy steps required to bring this feature to apps. This feature is currently limited to passwords stored in the iCloud Keychain, but I hope this will extend to apps like 1Password in the future. In the meantime, this is a great start 👍
Design
Designing Multiple Layers into Search
Alex Couch goes through the design process that went into building a more powerful search tool for ThoughtSpot. Before he does anything else, he outlines the requirements in great detail for the new search bar, making the rest of the design process much more straightforward. Developers who need to design apps themselves can learn a lot from how he approaches this task.
Typography in UI: Guide for Beginners
Fonts and typefaces, kerning and tracking, ascenders and descenders – what are these, and how can you use them to improve your UIs? This blog post covers most of what you will ever need for UI design without information overload.
Videos
I’m an Idiot
Rich Turton discusses his life as an "idiotic" programmer and how it ultimately makes him write better code. Although I'm inclined to believe that Rich is underselling himself, this talk includes a lot of great insight, whether you consider yourself and idiot or a genius.
Books
ARKit for iOS Developers
Augmented reality is quite intimidating, but don't let that get in the way of creating your dream ARKit app. This book by Mohammad Azam guides you through the important areas of the framework so you don't have to figure it out on your own. Although the book is not finished, the first few chapters are already available.
Sponsored Jobs
Senior iOS Engineer @ Cisco Meraki, San Francisco
Your work will run on hundreds of thousands of devices and impact customers who touch the Meraki app on a global level.
Bold and innovative iOS Developer wanted @ youSee/TDC Group in Copenhagen
Denmark's biggest TV streaming app needs new blood and highly ambitious developers.
Comment
With the fifth round of betas released this week, we're in the final stretch before the public release of iOS 11. Even still, Apple is making some pretty significant changes, such as pushing Messages iCloud sync to a future release. I'd rather have a feature pushed than for it to be buggy, so I'm glad they are waiting until they know it's working well.
The iOS SDK seems just about finalized though, so if you haven't started optimizing your app for iOS 11 now would be a good time – especially since you only have about a month left! While I don't have projects taking advantage of any new technologies, I can't wait to see all the new third-party apps that take advantage of them.
Evan Dekhayser