I strive to build things that compound. New platforms taking shape, architecture that opens markets, teams that punch above their weight — making the technical bet make sense to the business. I started when the iPhone was new and built a career on what came next. AI is poised to change how we build software more than anything since. It's big, it's undefined, and it's going to be messy, but turning chaos into clarity is where I do my best work.
18 Oct 2011
Xcode Archives – What a Buncha Jerks
Why your Xcode archive won’t validate and the one build setting that fixes it. If your static libraries are sneaking into the archive, ‘Skip Install = YES’ is the magic toggle you need.

5 Oct 2011
Mistakes Were Made: Integral Bounds
Non-integral CALayer bounds don’t just look blurry — they actually chop off pixels. A forensic look at CATextLayer backing stores, with screenshots and sample code to prove it.

30 Sep 2011
Mistakes Were Made: Description Isn’t Enough
Turns out po calls debugDescription, not description. Oops. A correction to an earlier blog post, with the fix that keeps CALayer subclasses from hijacking your custom output.
21 Sep 2011
All in the Timing: Keeping Track of Time Passed on iOS
Why your freemium game’s clock is so easy to cheat, and what you can (maybe) do about it. A deep dive into absolute vs. relative time on iOS, and a hybrid server-based approach to keep cheaters honest.
7 Sep 2011
CFTree Is Leaking It’s Children
CFTree’s docs say releasing the root destroys its children. The docs lie. A late-night debugging adventure with proof via Instruments, plus a manual teardown workaround.
29 Aug 2011
Why CALayer’s contents property is typed as id, and the neat trick that makes possible. Spoiler: you can clone a layer’s contents — even a CABackingStore — without ever touching a CGImageRef.
24 Aug 2011
The view on screen isn’t the view your code talks to. Here’s what Core Animation is really doing. Learn about the model/presentation layer split and how to use presentationLayer to animate from a view’s actual on-screen position.
22 Aug 2011
Integers in Your Collections (NSNumber’s not my friend)
Skip NSNumber and use Core Foundation to store integers in collections, 100x faster. A deep dive into CFArray and CFDictionary callbacks that makes the whole thing surprisingly painless.
15 Aug 2011
Quick Tip: Drawing Right Side Up With Core Text
Why Core Text draws everything upside down on iOS and how to fix it. A quick walkthrough of context transforms, text matrices, and why CGContextSetTextMatrix alone won’t save you.
1 Aug 2011
Mistakes Were Made: Initialize Your Locals
An uninitialized float worked fine in debug and shipped a bug to the App Store. The fix is a compiler warning you should turn on right now — plus a lesson in why zeroing your locals matters.
27 Jul 2011
CALayers v. CGLayers, or, Which Layer, Player?
CALayer and CGLayer sound related. They’re not. Here’s why you should ignore CGLayer on iOS. A quick breakdown of what each layer type actually does and why CGLayer’s desktop advantages don’t carry over.
26 Jul 2011
Override description on your classes and stop staring at memory addresses in the console. A beginner-friendly walkthrough of making NSLog and GDB actually useful for your custom objects.
25 Jul 2011
Lion’s reversed scrolling isn’t broken — you’re just thinking about it wrong. A history of scroll wheels, broken metaphors, and why moving the content instead of the scrollbar actually makes sense.
14 Dec 2010
Why The Best Developers Do Backflips
In 2010, Forbes profiled MeLLmo and its culture of hiring athletes and risk-takers. I was the centerpiece example — Senior Software Developer by day, professional jet skier on the side.

8 Jun 2009
19 May 2009
7 Apr 2009
22 Jan 2009
18 Aug 2008
11 Jul 2008
3/3





