10k Apart

I have spent much of my free time the last 12 days working on a project for the 10k Apart challenge. 10k Apart is a challenge to make a compelling progressively enhanced, accessible site with 10 KB or less of initial payload per page (more can be lazy-loaded). I decided to build an implementation of Conway’s Game of Life, which I had wanted to do since going to a Code Retreat a while back.
Continue reading 10k Apart

Satellite flare

I believe I saw a satellite flare for the first time tonight. I saw a light moving across the sky about the brightness of a medium bright star, a little off of north to south. It suddenly started to get brighter and brighter, until it got well brighter than any star. It actually got a little halo around it, perhaps indicating some haze in the sky. For a moment, I started to think it was a slow moving meteoroid. But it began to fade at about the same rate it had brightened, until it went back to its normal medium star brightness. It then just continued on across the sky.
Continue reading Satellite flare

Sign and submit PhoneGap app for iOS and Android

After some struggling, I got the PhoneGap app for the Akron Art Prize submitted to the iOS and Android app stores. Since it was a new thing for me and I wanted to ensure I could do it again, I took some notes on how to submit them to each store. I tried to do as much with the PhoneGap CLI as possible so it was easily reproducible from a git repo. Note that I used ‘cordova-icon’ and ‘cordova-splash’ for the PhoneGap-side assets, so I didn’t need to touch the platform folders beyond what is mentioned below.
Continue reading Sign and submit PhoneGap app for iOS and Android

PHP ‘break’ argument

I’m not sure if I ever knew this before, but the PHP break statement has an optional argument that declares how many levels to break out of, eg break 2. For instance, in the following example, the break will break out of both loops when the sub-item is found:

$theSubItem = null;
foreach(getItems() as $item){
    foreach($item->getSubItems() as $subItem){
        if($subItem->isTheSubItem()){
            $theSubItem = $subItem;
            break 2;
        }
    }
}
var_dump($theSubItem);

ensuring that we won’t loop through any extra items or sub-items.