Recent Posts

React Native Accessibility Is Pretty Bad

Allow me to preface this by saying that React Native sets out to solve problems I don’t think are very interesting to solve. In particular I don’t think that...

At The Risk Of Jon Ronsoning

I’m not much for telling other people when or how to be mad. This person said this, that person said that, none of it to me. Not my bag.

Free Advice

So let’s say you’re a company that’s seen a little criticism lately.

Radio Dysentery

Everybody has a podcast these days, but way way back, in the before times, me and some of my friends got together and recorded a show that was ostensibly abo...

What I Get Paid

I think pay equity is a topic worth talking about and today Shanley published a great piece on it:

In the Muck

I think anyone who has done a decent amount of contracting has had a few (or a bunch of) toxic clients.


The human side of this is profound Appeal to the fact that they’re probably a decent human being Say I want to use your software I want...


A fairly normal description of my side of most conversations with Rob Rix:


One of my favorite staples of Cocoa is –performSelector:withObject:afterDelay:. It’s a dead simple ‘do this later’ implementation and endlessly useful for sc...

Commitment Issues

ARC is one of most amazing advances in the history of Objective-C; really in the history of compiler technologies in general.

Comparing to NSNull

Checks to NSNull come up a lot when dealing with things like parsing JSON and while it’s mostly just ==, there are some options.

Making NSAssert Play Nice With Blocks

NSAssert is actually a macro that calls NSAssertionHandler using the handleFailureInMethod:object:file:lineNumber:description method with self as the argumen...

Objective-C Object Mapping

I think basically any Objective-C developer who has spent some time on the platform has written a half dozen different ways to turn a dictionary into a model...