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.
News
Swift 2.2 Release Process
So it looks like we now have some details about both the process and timescales for the next upcoming release of Swift 2.2. This will be the first official release of Swift since it has been open sourced and will therefore be the first release containing community contributions. At this point any new changes shouldn’t be that disruptive but it’s probably worth re-compiling your code with the new version just to check. Anyway, according to the plan the new release candidate branch for Swift 2.2 will be created tomorrow (January 13th) and although there isn’t currently a planned release date for 2.2 but according to the plan it should be somewhere between March and May.
swift.org
Business
May the App Store Be With Your
Following on from the article I included in last weeks newsletter, this article from @BenRiceM recounts the circumstances and experiences of his camera app Obscura and how it was featured on the app store. In this perfect storm, Ben also includes some valuable lessons about how important testing is, as well as how risky pushing major updates to an app is immediately before Christmas.
medium.com
What’s Your Apps Value?
As a follow-on from the article above, we also have this article from @parrots. In it he focuses much more on the monetary side of Ben’s launch and hightlights the importance that the correct pricing model can have, something that Ben was obviously experimenting with in v2.0 of Obscura.
curtisherbert.com
Design
Jedi Principles of UI Animation
Animation can play a key role in the experiences your users have when using your apps. In this article, @fiorine gives us a great overview of the different animation techniques we can use to both orient and delight our users. Definitely worth reading.
medium.com
Improve your iOS Architecture with FlowControllers
Minimising the dependencies between view controllers on iOS has always a little tricky. In this article, though@merowing_ introduces us to FlowControllers, simple objects that can be used to manage different parts of our app and coordinate the flow between ViewControllers. If you’re looking to enhance your iOS architectural design knowledge, this is a must read.
merowing.info
Generic Collection View Datasources: Helping Kill Massive View Controllers
We all have view controllers that do to much and that slowly drift towards tangled messes that we dare not touch. In this article, @ctardatakes another look at the problem of massive view controllers, working through an example with UICollectionView and the things we can do to split out the different responsibilities.
ctarda.com
Delegate vs Observer: It’s All Messaging
In this short article, @ambrstr she cuts to the chase and looks at how property observers can be used to provide a simple communication mechanism from one type to another.
amberstar.org
Code
TCP Sockets with Swift on Linux
We’re going to kick off our code section this week with a couple of articles on networking in Swift. In this one, @iachievedit takes us back to basics with a look at how we can use
iachieved.it
An Easy Way To Stub NSURLSession
Testing network connections can sometimes be tricky. Normally it’s done through the use of the NSURLProtocol and third-party libraries. In this article though, @dasdom takes a look at an alternative approach using Swift protocols and creation of a mock NSURLSession class to try and achieve the same effect in fewer lines of code.
swiftandpainless.com
Exploring Swift Array’s Implementation
With the release of Swift as an open source project, we now get much greater visibility of what is going on behind the scenes in this elegant and powerful language. In this article, @aciidb0mb3r dives into the detail of Swift arrays and looks at how different building blocks are brought together to deliver the power and simplicity we use on a daily basis.
ankit.im
Metal: Blazing Fast Image Processing
Introduced in iOS 8, Metal is a framework from Apple that allows developers to perform graphics rendering and parallel computation directly on the GPU. In this article @geppyp compares and contrasts the functionality of this new framework with the previous incumbent OpenGL and shows us how to setup your own projects to make use of this powerful framework.
invasivecode.com
10 Swift One Liners To Impress Your Friends
To close out our code articles this week, we have this article from @uraimo in which he gives us a number of Swift one liners that you can incorporate into your Swift code. I’m not sure it’ll enhance your dinner party conversation but there are definitely some useful code snippets in here to keep in mind.
uraimo.com
Precedence, Associativity and the Swift Operators
If you didn’t catch it, I published this post earlier in the week. It’s one for you if you’re just getting started with Swift and takes a detailed dive into how expressions are evaluated and how precedence and associativity work in Swift. The article also looks at the wide range of operators that we have at our disposal in Swift, something that all of us should know.
andybargh.com
Tools
How to Write a Git Commit Message
If you’re ever worked in a team of developers you’ll already know how important commit messages are. There is definitely an art to writing them and I think if you’re honest, you can probably think of commit messages that you’re not particularly proud of (I certainly can). Anyway, in this article, @cbeams gives us some good pointers in the style to adopt and as well as the information that should be included with your commit messages. I’ll certainly be taking on board some of his suggestions in my future efforts.
beams.io
Libraries
Creating Your First iOS Framework
If you’re just getting started with Swift development, you may not yet have tackled creating a Swift framework of your own. In this article @jakecraige helps you take your first steps down that path with a step by step tutorial of how to setup your framework, add Carthage and Cocoapod dependencies and establish a test infrastructure for your newly created masterpiece. A great reference article for both newbies and seasoned developers.
thoughtbot.com
Videos
NSLondon Videos
After a bit of a deal, it looks like the videos for NSLondon have finally been published this week. There’s a range to choose from covering the full breadth of iOS development and more besides so if you have a spare hour or two, it’s worth having a look and seeing what peaks your interest.
vimeo.com
Integrating with iOS System Search
In this 40 minutes video, @jacknutting dives into the new global search functionality and more specifically, how you can leverage its power and make it work with your own apps.
Finally
100 Days of Swift
To close things out today I thought I’d include a bit of inspiration for you, especially if you’re just starting out with iOS development. 100 days ago @samvlu didn’t know any Swift. Over the next 100 days he chronicled the apps he wrote and subjects he covered. It’s extremely interesting to see his progression over such a short amount of time and goes to show just what you can achieve with some dedication and perseverance.
samvlu.com
Comment
I hope you’ve had a good week. For many (which includes me), its been a week of getting back into the swing of things and blowing away the indulgences of Christmas. Despite this, this week has also seen a number of great articles being published including some details of the next Swift release and some follow-ups for some of the links I included in last weeks newsletter. So without further a do, let’s dive in…