SKShapeNode, you are dead to me
Update: Apple has resolved many of these bugs as fixed in iOS 8. I'll write a followup when we get further into the betas.For the past three months I've spent damn near every night and weekend moment...
View ArticleLearning to Build Abstractions in Quartz Composer
I decided today that I would learn a bit of Quartz Composer. I had never touched it before, beyond reading a couple articles and watching a conference talk. The most useful introduction for me was "UI...
View ArticleCompile-Time Error for Incorrectly Cased #import
OS X uses a case-insensitive filesystem by default. That means the following code that purports to load AFNetworking.h both compiles and runs, nary a peep: #import "AfNeTwOrKiNg.H"Gawsh, I can't put my...
View Article"Foreign Films"
I bought a randomly-selected Toothpaste for Dinner original. This is how Drew treats me?? I love it ;) You should buy one too if you like the comic at all.
View ArticleDTrace War Stories
Several stories of how DTrace saved someone's day when *nothing else* could. You too can wield this power and be the envy of your community.
View ArticleHow to be Fluent in Japanese
Two rules for learning a second language that have guided me to become fluent in Japanese.Andsocanyou!
View ArticleKindergarten Code
Over the years, I've come to understand the qualities that I admire in code. With the help of some of my personal heroes, I'll explain why I strive for "kindergarten code" and how it will make you a...
View ArticleLifting Moose
Moose is great for creating classes and objects, sure. But if your Moose usage is limited to reducing keystrokes, you're wasting so much potential.Moose's real power lies in empowering you to create...
View ArticleRight the First Time
As software engineers, there is always a strong pressure on us to deliver our code quickly. But that could easily lead to cutting corners which is a false economy that hurts the project, morale, and,...
View Articlenginx + FastCGI + Plack + systemd
One of my backburner projects has been to migrate this here website onto a fresh server. I never want to feel stuck on an old server again, so I've been investing time to make deploying the full...
View Article5K
I'm a walker. This one time in Tokyo, I walked a marathon visiting each of the 29 stations of the JR Yamanote line. Stopping only at red lights and a couple vending machines, it took 10 hours and 21...
View ArticleMass Go - Winter 2017 Tournament
Today I participated in the Massachusetts Go Association Winter 2017 tournament. I've been looking forward to this for a while, and have been studying extra hard to put in a good showing. My AGA rank...
View Article112.8 Seconds
T minus five months: On a whim, I booked travel for a single night in St. Louis. I would land the night before, and fly home five hours after it was over. The southern half of St. Louis was within the...
View ArticleIceland 2017
Edith and I went on a long weekend trip to Iceland. We loved taking in the country's natural beauty, meeting the impeccably friendly people, and…returning home to eat.Blue LagoonReykjavíkAurora...
View ArticleShaders are Easy (Step 1: Spend Years Writing C Code)
Today I wrote my first shader! I'd never written code directly for the GPU before. It turns out to be pretty straightforward. Mostly because in high school I wrote a lot of C, and also nowadays I've...
View ArticleMy Contributions to OEIS
Weird but completely true story: if you search The On-Line Encyclopedia of Integer Sequences® for "sexy", the third hit is me.I'm also present if you search for "lucky", but only on the second page....
View ArticleThe Whirlwind of Game Design (a Ludum Dare postmortem)
Over the weekend of December 1st, I participated in my first game jam: Ludum Dare 43. I chose the Compo track, so I made a complete game from scratch, solo, in 48 hours. The theme of the jam was...
View ArticleJumpcoins (my Ludum Dare 44 game)
The theme for Ludum Dare 44 was "Your life is currency". I struggled with coming up with a good game idea here, since both the words "life" and "currency" offer very little wiggle room for...
View Article