Swift Developments is a hand-curated newsletter containing a weekly selection of the best links, videos, tools and tutorials for people interested in designing and developing their own apps using Swift.
So it’s been a good week for me. I’m starting to turn my mind to a new iPhone project which is in the pipeline and have been experimenting with using my iPad, the @GoodNotesApp, and some pre-designed iPhone templates, to sketch out some early ideas for UI layouts, workflows and transitions. I know I’m late to the party for this type of approach but it’s actually been pretty successful so far, especially for jotting down new ideas when they pop into my head. It’s another example of the best tool for the job being the one you have with you! Anyway, having had a bit of time since the end of WWDC, it’s given people a bit of time poke around with all the new goodies. As a result it’s been another good week for articles and links so let’s dive in.
If you’ve never submitted an app to the app store the whole process can be a little daunting. In this two-article series (@Part 1, Part 2) @tdahbura talks you through the whole process.
App Store Submission Checklist
In addition to the articles above, the team at @savvyapps have released the checklist they use when submitting apps to the store. It’s extremely comprehensive and great resource to use when submitting apps of your own.
Since it’s arrival the new Swift Playgrounds app in iOS 10 has generally been given a big ?. However, some people have expressed concerns that this new tool will only help people learn to code rather than teaching them to be creative. For me, I think the new tool gives options. My parents were both teachers for years (though for the most part I managed to avoid them teaching me!), but the result is that I strongly believe everyone is different and as a result everyone learns in different ways. In this article, @ashfurrow weighs in (much more eloquently) with his own views.
Key-Value Coding has never been a particularly robust mechanism and with it’s stringly-typed references it is a common source of many hard-to find errors, especially in Swift. However, in Swift 3, life becomes a world easier with the introduction of #keyPath.@JordanMorgan10 brings us all the details.
At this years WWDC, Apple announced a number of new changes to UICollectionViews that significantly improve the scrolling performance of these collection views. In tips #241 and #242 of his @lilbitesofcocoa series, @jakemarsh walks us through how to take advantage of these new changes.
Another new change announced at WWDC was the introduction of the new UIPropertyViewAnimator class allowing you to add interactive and interruptible animations to applications. @jquave has more details.
One of the less publicised features introduced at WWDC was the arrival of two first-class neural network APIs for Basic Neural Network Subroutines and Convolutional Neural Networks. For many (including me), neural networks are a pretty daunting topic but this article from @bignerdranch is a good introduction.
Built on top of Core Animation and making use of CAKeyframeAnimation and CoreAnimationGroups under the hood, FlightAnimator is a block-based animation framework for creating, configuring, caching and reusing animations.
From the engineering team at LinkedIn, LayoutKit is a Swift-read alternative to Auto Layout. It’s UIKit friendly, asynchronous and declarative in nature and provides high-performance, fully tested code that capable of supporting highly complex view hierarchies.
Willow is a new logging framework from the engineering team at @Nike and supports both default and custom log levels, synchronous and asynchronous execution and thread-safety built in. One worth keeping an eye on if your on the lookout for a new logging library.
I’ve mentioned Fastlane a number of times before in past editions of this newsletter and if you haven’t checked it already you really should. This week, saw a whole new direction for this multifaceted tool with @KrauseFx and the team at @fabric opening things up through fastlane plugins a new feature that will allow developers to write their own actions that hook into the Fastlane toolchain. It’s going to be really interesting to see where this goes.
In this video, @merowing_ defines what having good iOS architecture actually means, surveys the different design patterns used around the community before talking about MVVM in a bit more detail.
Whether you’ve thought about it or not, open source software plays a big role in the lives of many Swift and iOS developers. For many of us though the code we write for our employers and clients remains locked behind closed doors. In this video, @orta puts forward the case for turning that model on it’s head, recounting the steps he took to establish an “open-source by default” culture at Artsy. It’s an interesting talk.
Utilising Motion Design to Enhance Your App
In this video from @NSLondonMeetup, @romainereid discusses the importance of motion design and how we can use it to tell our story, convey our message, catch your users attention and enhance our users overall experience.