Posts by Category


Important Blog Changes!

3 minute read

I’ve made a couple tweaks this site that I think warrant a post so that everyone is aware.

Hello Again!

2 minute read

Well, it’s been a year since my last post, and what a year it’s been. 2016 has been a whirlwind of unexpected events, many of them incredibly disheartening a...

Jekyll frustrations

5 minute read

It’s been awhile since I wrote a blog post, and upon wanting to come back and do another I noticed that jekyll had been updated to 3.0 (jekyll is what genera...


less than 1 minute read

Welcome to my site. In the coming weeks I plan to post about various programming topics related to things I’m working on and learning. I’ll likely focus a lo...

microblog test

less than 1 minute read

I backed the Kickstarter back in January, and I set it up to read from this blog once invites came in. You can find me there at


CopyOnWrite now available as a framework

less than 1 minute read

I decided this week to release the CopyOnWrite type I finished up in the last post I wrote on the subject. You can get at it via all the popular ways to inte...

Encapsulating Value Semantics, Part 3

4 minute read

In my last post on this topic, we built up a small struct named CopyOnWrite that abstracts away the need to manually check whether or not a reference needs t...

Encapsulating Value Semantics, Part 2

6 minute read

In my previous post in this series, I gave a brief overview of how value semantics work along with a couple of good resources for more in-depth details on ho...

Encapsulating Value Semantics, Part 1

6 minute read

I watched a couple of really good videos on value semantics recently. One was by Alexis Gallagher, named Value SEMANTICS (not value types!), which does a goo...

Fun With Optionals, Part 1 - Basics

4 minute read

Optionals are another one of my favorite features of Swift. When I started learning Objective-C, I was so happy that sending messages to nil was basically a ...

Weakify now available as a framework

less than 1 minute read

Yesterday I decided to collect my weakify functions (that i’ve been tweaking since that post a bit for some new use cases I’ve discovered) into a framework t...

Swift 2 and @available properties

4 minute read

I haven’t played around with Swift 2 too much yet as I’ve been busy with other things in the past couple of months. However today I fired up Xcode 7 (beta 4)...

Swift Protocols And Handling Mutable State

5 minute read

I recently ran into a curious problem on one of my side projects that I didn’t understand at first. I was using a swift protocol to provide a uniform interfa...



My WWDC Wishlist

2 minute read

WWDC 2017 starts in a few days. I’m excited at the potential new toys Apple will be announcing for developers, and I’d be remiss if I didn’t have specific th...