All Blog Posts
Fun With Flags Managing concurrency with better communication. And flags. | 15 Jan 2019 |
Concurrency From the Ground Up Based on a talk presented at 360iDev 2018 | 27 Aug 2018 |
Getting Under Swift's Skin @ NSMeetup Three ways to get under Swift's skin: reflection, debug toolchains, and SIL | 8 Feb 2018 |
Five Unbelievable Secrets of Reactive Programming the Experts Don't Want You to Know! Totally non-clickbaity article about lessons learned from reactive programming. | 23 Feb 2017 |
RxSwift @ NSMeetup So you want to be a reactive programming beginner? | 2 Feb 2017 |
The Year of Travel Turns out I did a lot of walking and flying in 2016. | 17 Jan 2017 |
Swift Summit SF 2016 Thoughts on reading and writing after spending two days amongst 400 other Swift nerds. | 13 Nov 2016 |
The Case of the Disappearing Apps Thinking about a brave new world of installing apps, using them, but never launching them. | 19 Jun 2016 |
Swift Summit SF 2015 What I learned From 55 Swift Standard Library Protocols. | 3 Nov 2015 |
Audience Interaction in your Conference Talks Bring the audience into your conference talk...if you dare. | 23 Oct 2015 |
Outlining Your Conference Talk Pixar-style Use a narrative to get at the core of what you want to say. | 15 Oct 2015 |
Switching Your Brain to Swift Existing codebase + existing brain + Swift. What could go wrong? | 17 Aug 2015 |
Watch-First Design How do you design an iOS app? By starting with the watch. | 29 May 2015 |
Force Touch The force is strong with Apple's new hardware and APIs. | 8 Apr 2015 |
RWDevCon 2015 Remote work, team building, and selfies at RWDevCon. | 13 Feb 2015 |
What's New in Swift 1.2 Swift 1.2 is out in the latest Xcode beta. What's new? Find out! | 11 Feb 2015 |
Four Things I Learned Making My First Swift App That's right: an iOS app written 100% in a language that's been public for a few months! | 22 Oct 2014 |
Shipping Stuff What have you shipped lately? | 10 Oct 2014 |
Transformable attributes in Core Data Boring: strings and integers; fun and mysterious: transformable! | 28 Jan 2014 |
iOS 7 By Tutorials Everything you wanted to know about iOS 7 but were afraid to ask. | 18 Sep 2013 |
Adventures in Dvorak, two months later Two months ago, I switched keyboard layouts. I am now thinking in Dvorak! | 13 Aug 2013 |
Adventures in Dvorak Two weeks ago, I switched keyboard layouts. I am now skilled enough to type up my experiences. | 14 Jun 2013 |
Custom Keyboards in iOS How to set up a custom keyboard (input view) for a text field in iOS. | 17 Mar 2013 |
Restoring In-app Purchases On the pesky requirement of having a "Restore Purchases" button in your iOS app. | 16 Aug 2012 |
Simple iOS audio playback Making noise with Audio Services and AVAudioPlayer. | 5 Jul 2012 |
Blocks in Objective-C Based on my "Introduction to Blocks" lightning talk. | 12 Jul 2011 |
Foreign keys - an introduction The least you need to know about foreign keys but were afraid to ask. | 22 Feb 2011 |
Schwartzian transform in PHP It's no Perl for sure, but can PHP speak with a Lisp? | 3 May 2010 |
Benchmarking PHP Featuring PEAR's Benchmark module. | 22 Apr 2010 |
SQL JOINs, part 2 The exploration of SQL JOIN continues with the oddballs: CROSS and OUTER. | 19 Feb 2010 |
SQL JOINs, part 1 Left? Right? Outer? Let's review. | 16 Feb 2010 |
Benchmarking Perl Featuring the Benchmark module from CPAN. | 14 Sep 2009 |