There has been plenty of speculation that language native concurrency will be a focus for a future release of Swift. So when Chris Lattner publishes a manifesto on the topic you'll want to make sure you read it. Of course, it talks about the recent async/await proposal (and prototype) that he worked on, but then goes on to discuss the Actor model of concurrency at length. Interesting stuff.
There are many different ways to manage table views, but this seems like the most straightforward and succinct approach I've seen, by delegating responsibilities and using enums strategically. There's nothing too revolutionary here, but this guide to some best practices by Marin Benčević is worth reading.
UserDefaults is an essential API but it hasn't really had any enhancements since the very beginning of the SDK and you're still probably writing quite a bit of boilerplate code to work with it in a strongly typed way. Not only does this library make UserDefaults strongly-typed, it takes advantage of generics and the new Codable features of Swift 4 to make that essential data store that much better to work with. 💯
Property lists are extremely powerful, but when working with them you'll suffer many of the same problems as UserDefaults. In another really cool use case for the Codable protocol, this blog post goes through how to make reading from and writing to plists a breeze. 💨
Codable in Swift 4 is super simple to use, so we're done with it right? But did you know about some of the advanced features around dates like automatic ISO 8601 formatting? Jake Marsh gives us the details.
It's Codable, Codable, Codable this week isn't it! 🐟