Tomasz Gebarowski

Taming Swift compiler bugs

Xcode 7.2 has a bug which results in compilation failure of project having +1500 Swift files. It seems that swiftc is buggy, but you can try to bypass that behaviour by using my wrapper script. Read the whole post if you are interested in what happens under the hood.


For the last two weeks I’ve been busy doing my side project, a library helping building in-app settings for iPad and iPhone apps.

By providing a declarative DSL, SwiftySettings allows to define your own settings, integrate with storage interface and automatically generate native Settings app like user interface.

Protocol extensions and reuseIdentifier in UITableView

Inspired by protocol extensions in Swift 2 and reflection mechanism, I implemented a simple UITableView extension allowing to forget about reuseIdentifiers when registering and dequeuing UITableViewCells.

Swift Behaviors

Recently I’ve published a set of small uncoupled Swift objects (Behaviors) which may provide various functionality to your apps. The whole concept of Behaviors is inspired by #13 article by Krzysztof Zabłocki. I ported the idea to Swift and extended it a bit to allow modifying UIViews (for animations, transitions etc)

Ubuntu 11.4 installation from USB on MacBook Air

Installing Ubuntu on a MacBook Air which has no CD drive is a tricky task. First of all it is impossible to boot from the USB stick created in Ubuntu, secondly even if you manage to boot from it, the installer will fail as it tries to read from /cdrom anyway.

Some time ago I found the following thread which described step by step procedure of generating bootable USB stick, recognized as CD drive. In order to make it working, you have to download and extract the mkhybridiso.tar.gz (from the above page) and remaster your Ubuntu ISO with the following command: