Hi! I'm Arkadiusz Holko, an iOS developer from Warsaw, Poland.

Generic “functions” in Objective-C

For the past few days I've been trying to bring one of my older codebases up to date with iOS 9 and Xcode 71. Today I stumbled on some code using map method from Mike Ash's MACollectionUtilities library. I started thinking whether it's possible to make this method generic. Let's see what we can come up with.

Read more →

Improving Notification Center

A couple of weeks ago, in his How Not to Crash series, Brent Simmons wrote in detail about common issues related to using NSNotificationCenter. The piece clearly demonstrated how much busy work rests on our shoulders and how hard it is to get everything right.

I wanted to make NSNotificationCenter easier and less error-prone, by fixing these three common sources of bugs: (...)

Read more on Macoscope's Blog or go straight to the implementation on GitHub.

Why you should start using @weakify and @strongify macros

I have to admit something. I haven't used @weakify and @strongify macros in any of my projects yet. A recent discussion in my team at Macoscope and a discussion on Twitter started by Peter Steinberger sparked my interest in these macros. Read on to learn what I found out and why I think they're the way to go in most scenarios.

Read more →

Introducing ReflectableEnum

I'm happy to announce that I released ReflectableEnum – Reflection for enumerations in Objective-C last week. ReflectableEnum tries to fix some of the problems I've been having with enums in Objective-C for a long time. It's a small library, but I think it can find its place in many Objective-C codebases.

Read more →

Improving Immutable Object Initialization in Objective-C

Much has been written and said about advantages of using completely immutable objects. For the past few months I’ve been making sure that as many parts as possible of systems I build are immutable. When doing that I've noticed that creation of immutable objects can become cumbersome, so I set out to improve it. You can find the outcome of my thinking in a small library called AHKBuilder. Read on to learn whys and hows behind this library.

Read more →