Let it throw, Let it throw!

Today’s article will be about handling errors in Swift.
Because let’s be honest, that makes a fun post title for the season ❄️☃️.

The OpenSource Experience

As you all know, Swift just went OpenSource earlier this week. That’s huge news for the community, and there have been plenty of posts about that already explaining what a game changer that is.
And now for something completely different™, today I’ll take this opportunity to talk about my own experience with OpenSource and how contributing to OSS can be very enlighting for everybody.

Mixins over Inheritance

When coming from an Object-Oriented Programming language like ObjC, inheritance is often used to share code between multiple classes. But that solution is not always the best, and have some issues.
In today’s article, we’ll see how Swift’s Protocol Extensions and their usage as “Mixins” can change the deal.

Let's talk about Monads

In the last article, we played a lot with map and flatMap, methods on the Optional and Array types. What you probably didn’t realise is that you were manipulating Monads without knowing. But what is a Monad?

Thinking in Swift, Part 4: map all the things!

In previous articles of this series, we learned about using map and flatMap on arrays. Today we’ll discover map and flatMap also exists on Optionals. And on plenty of other types.

Thinking in Swift, Part 3: Struct vs. Class

Continuing my “Thinking in Swift” article series, today we’ll do a simple change that will simplify our code again: using a struct.

Thinking in Swift, Part 2: map those arrays

In part 1 of this article series, we saw how to avoid force-unwrapping optionals, save ponies 🐴 and avoid crashes by doing so. In this part 2, we’ll refine our code to make it Swift-er, introducing map() and flatMap().

Thinking in Swift, Part 1 — Addendum: Sacrificing ponies

After publishing part 1 of my article series “Thinking in Swift”, I had some great feedback and reactions on Twitter. Today I wanted to build on those comments and talk about when it could be ok to use ! and sacrifice a pony 🐴.

Thinking in Swift, Part 1: Saving ponies

I often see newcomers to Swift try to translate their ObjC code into Swift. But the hardest thing when starting to code in Swift is not the syntax, but changing your way of thinking, to use the new Swift concepts which were unknown to ObjC.

In this article series, we’ll take an example of ObjC code and walk thru converting it to Swift, introducing more and more concepts along the way.

Fun with Functions

Today’s article is about doing some fun with Swift functions, like functions returning functions, currying and operators on functions.