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.
Business
Surviving the App Store
Back in 2014, iOS Dark Room, a text-based adventure game from @amirrajan reached the top spot in the app store for an 18 day period. However, this type of exposure is an exception rather than the norm. Putting this aside then, just what does it take to survive in the app store these days?
simpleprogrammer.com
Why We Choose Profit
Running a software development company, even a small app-development house, is a challenging endeavour but in an industry that often leans toward re-investing all the profits back into the business in order to spur future growth, why would a company choose profit? @jasonfried provides some wise words.
signalvnoise.com
Design
20 Best Practices for Mobile App Search
With mobile apps containing larger and larger amounts of data, search plays an important part of many designs. However, there’s a right way and a wrong way to incorporate these capabilities to your app. @hellosunschein provides 20 great tips for making your apps search experience shine.
raywenderlich.com
Overcast 3 Design Walk-though
I always find design walkthroughs interesting. It’s something about understanding the thinking behind why certain app features are implemented the way they are. It was with great interest then that I read this this article from @marcoarment on some of the thought behind his major UI redesign of Overcast 3. It provides some interesting insights.
marco.org
Code
Comparative Asynchronous Programming
Asynchronous programming is a critical aspect of developing responsive and performant apps in Swift, but with a variety of different approaches at our disposal which approach should we choose? This article from @ashfurrow provides a great summary of this landscape and is a useful starting point if you are trying to decide on a route of your own.
ashfurrow.com
Libraries
PanelKit
PanelKit from @LouisDhauwe is an impressive framework for implementing a range of panel-based UI’s on iOS including model, popover, pinned and floating varieties.
github.com
ESTabBarController
ESTabBarController is a customisable TabBarController from Vincent Li. Inheriting from UITabBarController
ESTabBarController lets you change the font style, icon size and even add animations to your tab bar icons.
github.com
SwipeCellKit
A swipeable UITableViewCell
based on the stock Mail.app from @jerkoch. It’s implemented in Swift and supports both left and right swipe actions, customisable transitions and both text and image based action buttons.
github.com
Swift
Migrating Firefox for iOS to Swift 3
If your one of the many developers who are faced with the task of migrating their Swift 2 code bases to Swift 3 you can be forgiven for putting off. However, if your project containing over 206,000 lines of code, as it does for the mobile team at @mozilla, a more considered approach needs to be taken when the time actually comes. This article from their developer blog, details the approach the team took, how they prioritised different sections of their code base and also some lessons they learnt along the way.
github.io
Videos
Test Driven Development (TDD) for the Masses
You’ve probably been told that unit testing is mostly aimed at testing the Model part of your app. @jdortiz disagrees. In this video, he discusses TDD and demonstrates how to write a set of unit tests for a Table View Controller to get you started. If you’ve been avoiding writing unit tests up until it’s worth a watch.
realm.io
Learning From Our Elders: Applying Functional Insights Without Losing Swift
Functional programming has been around for years and the Swift programming language has absorbed many of the lessons of these functional programming languages. @cocoaphony takes a look at just what effect these functional languages have had on Swift and examines how we can make use of those features to get the best out of the language.
cocoaheads.tv
How To Be An iOS Time Lord
Working with time in Swift and iOS is never simple. Times, durations, time zones, leap years, leap-months and different calendar types all add to a suprisingly complex problem. However, iOS gives us some great tools to deal with all these complexities and in this talk, @ameir covers many of the date and time API’s available on iOS.
cocoaheads.tv