Monkey Bread

My familys recipe for monkey bread, which varies from the traditional by being a biscuit not a dessert.

Enterprise-Ready IPv4

This arose as a bit of a joke that bounced around among several friends and I. I thus present to you, IPv4, if it were Enterprise Ready.

An Unusual Case For Cucumber

Today I came across a case against Cucumber, and I have a couple bones to pick. More importantly, I want to elaborate a bit on the author’s comments about enjoying the Gherkin syntax, and expand on an idea there.

Fast GeoIP Queries in MySQL

Many moons ago, I tried to use the GeoIP database, via MySQL – and discovered that MySQL was doing the wrong thing with the queries. Naturally, I found some tricks to make it faster.

The AAIA ACES Datasets

Recently, I’ve been introduced to the AAIA’s ‘ACES’ datasets. These datasets aim to describe the make, model, and configuration of pretty much every vehicle in recent history.

These datasets are a terrifying case study in how not to design datasets.

Kill it With Fire Friday

I previously wrote about an idea I had for managing technical debt in the face of continuous and inevitable business pressures. I want to take a moment to follow up with some of the comments I’ve received on the technique, how it evolved, and where it proved strong/weak.

Cloudability Looking for Senior Data Developer

“As Data Engineer, you’ll design and architect the pipeline for data ingested from multiple sources. We are looking for creative, results-driven developer who is excited about big, fast and flexible data.”

Know What You're Actually Testing

Getting At Awkward Code, For Great Testing

A couple days ago, I wound up helping out a colleague on a problem he was having coming up with an appropriate test case for a piece of code in a Rails app. It reminded me that I had wanted to talk about how structuring your code affects what you are actually testing, and how that related to what you want to test.

Shamir's Secret Sharing

Shamir’s Secret Sharing is a mechanism by which N people may each have a piece of of information, such that when any M people come together the pieces can be used to reproduce a secret – but if only M-1 pieces are brought together, you have zero bits of the secret.

Beyond Putting a Burger In Your Shell

So I saw a blog post today titled “put a burger in your shell”, which showed how to use the emoji characters in Unicode 6.1 to put a cheeseburger in your terminal.

That got me to thinking: Icons can be a simple, quick-to-parse, compact means of conveying information. Perhaps some of the emoji could be used for a more practical purpose. So, I have put together a little project called BashFu to do just that.

Managing Technical Debt

A Perspective on Technology Debt

(Cross-posted to the Cloudability Blog)

As engineers and managers we often speak of “technology debt” – the accumulated cruft and drag coefficient that make maintaining a system harder over time. Brittleness arises over time, as sure as the sun rises.

99(k) Red Balloons Go By

A good friend of mine proposes the use of weather-balloon based WAPs (dead link, no replacement yet) in a mesh topology to route around censorship in conflict areas. One of the niftiest ideas I’ve seen in a while.

Zero-Day Magento EE Cache Poisoning Attack


Magento Enterprise Edition is vulnerable to poisoning of its page cache under some configurations due to inappropriate trust of HTTP Host header values.


Users shopping at online stores driven by Magento EE can be redirected to arbitrary third party sites, allowing malicious entities to entice users to hand over their credit card information inappropriately.


Major – Exploit allows for content injection, and hijacking of users. Exploits have been observed in the wild.

Prefab Overrides Considered Harmful

Punny title notwithstanding, I have decided that “prefab overrides” in Unity are more trouble than they are worth. The idea of course is to allow parametric variation of instances within a scene, but in practice I just seem to wind up with accidental breakage where overrides get lost because of a change to the prefab itself.

UPDATE: Essentially every issue I’ve had with prefabs has been fixed in more recent versions of Unity, rendering prefab overrides far more useful in practice.

Unity's Reflective/Diffuse is Broken. Here's the Fix.

The Reflective/Diffuse shader shipping with Unity 2.6.0 (haven’t checked 2.6.1 just yet) does not work properly when the object is lit exclusively with vertex lighting. Here’s how you fix it – it’s just one line.

A Brief Treatise on Events and the Object Lifecycle in Unity

The Problem

Almost every headache I’ve had with Unity has ultimately come down to two simple but fairly amorphous problems. My goal is to make the nature and implications of those problems clear, and present a possible solution that Unity Technologies could implement to (hopefully) solve them.

Pathfinding in Unity

When it comes to pathfinding in Unity, you can roll your own, or use one of two publicly available resources. The most drool-worthy is AngryAnt’s Path. Having gotten way too familiar with the problem of pathfinding myself, and wanting a better workflow and richer capabilities than my home-grown solution affords me, I decided to poke around with AngryAnt’s code last night.

A Little Ambiguity Goes A Long Way...

This is not an article about iPhone developer angst boiling over. It’s not an article about the implications of the developer of the Facebook app giving up on iPhone development and Rogue Amoeba doing the same.

License of UnityUnit

I was asked today about what license UnityUnit is released under. Since I didn’t explicitly state the rights and terms one can’t reasonably assume that it is safe to use it! So, I am officially noting that all versions of UnityUnit to date are released under the BSD license. Enjoy!

Unit Testing in Unity

Until now, there has been no good solution for building unit tests for games built using Unity. As of today, there is. Get the package (version: 20090704) here.

Ruby on Rails and Performance. An Interesting Experience.

I was out sick yesterday, but I managed to spend a little time working on “SB”. I’ve been playing with Ruby on Rails for a couple months, but today I really began to grok where the limits are with respect to Ruby, Rails, and performance.

The Grand Re-Launch!

It’s been a hectic month, but is finally (mostly) to re-launch as the face of MrJoy, LLC – a new company devoted to edgy entertainment delivered via unique distribution channels. We’re even getting close to launching our first game: Harmonic Convergence.