This is the #14 article. In this week, I saw a lot of tweets about PanelKit. I hope Apple will have this function by default.

Thank you for updating Core Data Update!!

This update brings the book fully up to speed with Swift 3, as well as with the changes in Core Data released with iOS 10 and macOS 10.12. For example, we now take advantage of the generic result types in Core Data’s API, the new NSPersistentContainer class, concurrency changes to the persistent store coordinator and much more.

I really appreciated team :tada:

Playgroundscon took place in this week. I added some articles in the following list:)


Swift Changes Considered Harmful

I like Swift. We’re using it for new products like Linea, which was written from the ground up with the new syntax. In spite of this, I still consider the language harmful.

I understand the feeling, but I enjoyed such a drastic change if it is reasonable:)

SwiftGen 4.2 and other news

SwiftGen — my tool to generate Swift code so you can use your images, localized strings, fonts, storyboards and other assets in a type-safe way — has just been released in version 4.2 after a big internal refactoring. I’ve also been working on other OSS projects lately.

I rely on these libraries. I didn’t know they refactor them under the hood.

Migrating Firefox for iOS to Swift 3.0

A week ago we completed the migration of the entire Firefox for iOS project from Swift 2.3 to Swift 3.0. With over 206,000 lines of code, migrating a project of this size is no small feat. Xcode’s built in conversion tool is a fantastic help, but leaves your codebase in a completely uncompilable state that takes a good long while to resolve.

Playgrounds conference 2017

Blog posts, slide decks and videos from speakers at Playgrounds 2017 in Melbourne

Swift Top 10 Articles For The Past Year (v.2017)

For the past year, we’ve ranked nearly 9,000 Swift articles to pick the Top 10 stories (0.11% chance) that can help advance your career in 2017.

Rank 3 is shu223/iOS-10-Sampler.

Comparative Asynchronous Programming

So I’m in Australia to give my talk at Playgrounds Conference about asynchronous programming. While we wait for the video to be edited and uploaded, I thought I could take you through the talk in blog post form. So let’s dive in!

Time Machine Utilities: tmdiff, tmcp, and tmls

Just a quick remember that tmdiff, tmcp, and tmls are available from their respective GitHub repositories. These time machine command line utilities enable you to list backups, diff the current version of a file with a backed up version, and copy from time machine to the current working folder.

Type erasure using closures in Swift

One of the things that makes Swift so much safer and less error-prone than many other languages is its advanced (and in a way, unforgiving) type system. It’s one of the language features that can at times be really impressive and make you a lot more productive, and at other times be really frustrating.


In my mind there are two ways of thinking about composition, when we have FRP or FP in the mix. The first one is often mentioned when compared to inheritance1:

Divide and conquer

More and more we see companies that run away from Xcode to try the dynamism of languages like Javascript on their mobiles apps.

Five Unbelievable Secrets of Reactive Programming the Experts Don’t Want You to Know!

Based on a talk given at Playgrounds in Melbourne, February 24, 2017.

Swift JSON Tutorial: Working with JSON

Updated for Xcode 8.2 and Swift 3 on 1-15-2017 by Luke Parham. The original tutorial was written by Attila Hegedüs.

The learning materials list for RxSwift

Reactive programming is awesome and really makes complex I/O stuff simple. However, FRP is totally different approach how you look at the events and programming. Such a change in thinking requires good quality materials which can make the learning process simpler and quicker. Here’s the list of materials which I’ve read and I’ve found them useful. The list is sorted in an order I would like to read it 😉

Swift Integer Quick Guide

If you are new to Swift and have some experience with “C” style languages you probably have not given the Swift integer types much thought. They mostly work as you expect until one day something catches you out.

Why I created Rock for Swift CLIs

I excessively make use of the official Swift Package Manager as I usually do some CLIs or other stuff. For this use case it is really great. When developing Apps, Carthage and CocoaPods come in handy, which are great, too.

XCTest and Optional Unwrapping

XCTest is the default test harness on iOS and Apple’s other platforms. It provides support for organizing test cases and asserting expectations in your application code, and reporting the status of those expectations. It’s not as fancy as some of the BDD frameworks like Quick and Cedar, but it has gotten much better than it used to be, and is my preferred test framework these days.

Synchronized Wrapper in Swift

This is an idea I’ve been tinkering with recently, to help enforce thread-safe access to properties in a class instance. It still needs some more refinement, but I wanted to write up my thoughts and progress so far, to start to get feedback.

Safe segues in Storyboards

This article is ❄️❄️❄️ … or not! I will talk about our Qold® mobile app and how it was built using Storyboards. I hope that you know already what Qold is but if not then take a look at how it started


Deep Dive Into Networking in Swift

Swift has a bunch of cool features that can make networking a lot easier, more expressive, and safer than in Objective-C. Learn about how Tumblr embraced Swift in our networking code and about the architecture of our new networking library.

Learning From Our Elders: Applying functional insights without losing Swift by Rob Napier

Swift is not a functional programming language. Pushing too hard to make it one fights Swift and breaks Cocoa. But Swift has absorbed some fantastic lessons from the functional world, and while value types may not quite be the present, they are clearly the future. We’ll explore how decades of work in functional languages have influenced Swift, and how you can use those features best while staying true to Swift.



An open 📧 to Apple from developers that work in a daily basis with their tools ⚒


Soft-typed query for anything


Use dlopen()ed libsqlite3 in Swift


Swift Playground to experiment with the private DrawingKit API on iOS 10


A collection of convenient assertions for Swift testing


A Mac and iOS Playgrounds Unit Testing library based on Nimble.


74: How to Create a Micro-Startup in Japan – Patrick McKenzie

More than a few people dream of coming to Japan, starting an online business that gives you financial freedom and leaves you with enough free time to study the language travel and just enjoy Japan.

Invalidating Negativity

At the beginning of this year, I started using an app called Moodnotes to start logging my emotions on a regular basis. The result after two weeks of use surprised me: I’m a pretty positive and happy person.

5 Calls

I have become much more political in the last year than I ever have before. Like many, completely dumbstruck by the outcome of the election, I have been struggling with how best to channel my frustration and anger.

Shell → Watch Notifications

At work we recently switched from Cocoapods to punic. The reasons why are irrelevant for the purpose of this post. However, one of the traits of using punic is very long build times when you’re building all your dependencies. On the plus side, builds of our project tend to be pretty quick.


Episode 131 – Driving In Cars At Home – Recorded LIVE Feb 15, 2017

This week we recorded LIVE from Mark’s car and we travelled from San Francisco to Cupertino. Responding to listener feedback we follow up on Linea app and listening to podcasts while mowing lawns or walking dogs. We discuss Apple’s stock price reaching and all-time high as well as Apple’s position on Augmented Reality. We discuss our recent trip to the Realm World Tour in San Francisco. Picks: Locating the source of a memory leak and Bowmor Bowling in Cupertino.

228: Start in Beginner Mode

Derrick travels to Portland to visit fellow bootstrapper friends, Ben recounts his recent conference travel, and a discussion of their most pivotal hires as well as account rescue techniques.

Swift Unwrapped podcast will be hosted by @jpsim and @jessesquires :tada:

Good to know:)

If you have any questions and feedbacks about a kind of new Swifty week, feel free to ask me :+1: You can catch me on Twitter and Github.

Have a lovely week <3