Swift and Obj-C: 2015 Plans And Obstacles

My current plans for Swift adoption in 2015: I’m just finished a contract project in Swift 1.2. It was a really great experience for working through Swift and finding it’s strengths and weaknesses. At work, we may introduce some Swift 2.0 into our application for new source, but there is currently no pressing need to […]

Obj-C and Swift, not Obj-C vs. Swift

On Twitter, I’ve been vocal that I don’t believe Obj-C is going away any time soon. For reference, Apple’s stance on the matter is: “Objective-C is not going away, both Swift and Objective-C are first class citizens for doing Cocoa and Cocoa Touch development.” It’s important to note that while there are a lot of […]

On iOS Quality

My mom loved her iPad 2. She got it a little more than 3 years ago. It’s been with her and my dad all over Europe. She’s used it with her camera to import photos. She does shopping on it, looks up directions in maps, browses Craigslist. In November I got a text from her. She […]

Why I’m Buying The Big Phone

This was my first “handheld” device. It was a NEC MobilePro 200. My neighbor had bought it, but never found a use for it, so I got it in exchange for some web work I did for him. It had Mobile Word and Excel, Solitaire, and a 56k modem in the PC card slot I […]

Why I’m Not Adopting Swift (For Now)

If you follow me on Twitter, I’ve made a lot of noise about how I don’t think developers should be adopting Swift in it’s current state. My problem isn’t with the idea of Swift, or replacing Obj-C. I believe Swift could, in the coming weeks or months become a language suitable for writing production code. […]

Xcode CI Review

Recently I’ve been piloting Xcode’s Continuous Integration server for a project at work. We’ve been using it over the last few months, and so far it’s been going well. I’ve had people both at work and outside of work ask me about it, so I thought I’d write up a review of my experiences so […]

Testing Apple Seeds

Having worked with beta versions of Apple software since the original version of OS X, I thought I’d share a few tips on how best to test new versions of OS X and iOS as a developer.


Recently there has been a lot of discussion about skeuomorphism vs. flat user interfaces, but I think the entire discussion is broken. Let’s go back to the beginning: The original Macintosh GUI. An extremely flat UI, but full of skeuomorphism. Folders look like folders. File deletion is done through a trash item, that not only emulates a […]

iCloud is Hard

I’ve spent a lot of time over the last few months talking to people about CoreData’s iCloud syncing features. One complaint I hear is that Apple should make the API easier to implement and handle problems automatically for the developer. CoreData’s persistent store iCloud syncing API has it’s faults, but I think developers underestimate how […]