14

With the latest changes in Xcode 7.3, you can once again build drag-and-drop playgrounds to provide simple Swift-based utility apps with minimal coding.

Unlike older solutions, XCPlayground’s interactive live views don’t require pop-up windows. You don’t have to do anything special to make the page application run with a different priority. Just open the assistant and the app is there, running, and interactive.

Read More »

09

We are all familiar with collection types. Array, probably, the most common way to represent collection of items. We can easily iterate through by using for loop.

Another Swift collections representations, like Dictionary, Set and others has one important thing in common: all of them are adopting SequenceType protocol. We can create custom sequences for very wide range of purposes. It can be finite or inifinite sequence. For instance, we may need the ‘powers of 2’ sequence or similar.

Read More »

09

I’m still getting used to Associated Types in Swift. Even though they’ve been around for a while, I first starting to understand them from this talk by @alexisgallagher.

So I was happy yesterday when I used them to sort of solve a common problem in iOS development: View Controller Data Injection with Storyboards and Segues in Swift.

Read More »

07

Concepts like Functors, Applicative Functors, Monads, and Monoids in Haskell all seem totally incomprehensible at first, but translating them into Swift can make things much clearer. Each of these concepts are essentially protocols that tie together Arrays, Optionals, Streams, Promises, and a host of other data types. They make way more sense when written in Swift with descriptive variable names. Understanding them can give you a deeper understanding of programming paradigms like Reactive Programming and Railroad-Oriented Programming.

Read More »

03
31
15
23

Coming from a Ruby background, Xcode – and IDEs in general – never really feels like home to me. I often miss Vim and hope to get as much done in the terminal as possible.

Working in the IDE, I often feel there’s a lot hidden out of sight. Hidden behind config files, property lists, some unknown IDE defaults. A lot I don’t know and a lot that gets done for me rather than by me. Surely there’s some benefit to that. But the downside is that the inner workings of an application can be poorly understood.

Read More »

23
23