Category Archives: Uncategorized

Amazon Photos & Cloud Backup In General Sucks

What’s the point of making a website / blog / LLC / career and building up a modicum of a following if you’re not going to use it as a forum for shitposting once in a while? Right? Right.

I wouldn’t post something as stupid as this if it was possible to actually post something about bugs with Amazon’s shitty photos app on their forum, but even that’s impossible at this moment because of some other shitty internal error on their amazon photos forums page, so, let’s start, yeah?

First, the obvious: Amazon Drive / Photos is an infuriating backup service for mac users (and possibly for all users), because the desktop app is shit.

The company provides a desktop app that, to its credit, can generally handle uploading a huge amount of files *fairly* reliably, but it chokes, a lot. Namely, if an error happens while a certain file is transferring, which if you’re uploading thousands of files, happens, it appears the app will stall the given upload thread and never recover. Translation: if you tell the app to upload up to 8 files at a time, and you upload a bunch of files overnight, one by one, those 8 threads will get hung up at some point when something goes wrong, and the app will sit forever without reaping the dead threads and starting more uploads – until you exit and reopen the app.

There’s the other usual laziness too – the app is only updated about once a year at best; changing settings like the number of simultaneous threads allowed or max bandwidth doesn’t do anything until the app is closed and reopened; clicking the “pause” button will show messages like “all uploads are resumed”; disconnecting from wifi in the middle of an upload of any size will mark every single file as canceled and you need to start all over again; and if you do one-time uploads (as I prefer to do rather than have the app constantly scanning backup folders), sometimes the app will miss files, so you need to make sure to upload twice, and so on.

But, the app gets a lot right. Under the covers, it compares md5s of your local file and what’s already been uploaded, so it saves time and bandwidth not re-uploading files that are already there. It’ll upload *huge* (20GB+) files without any problem at all, and it’ll handle thousands of files too – as long, as mentioned above, the threads don’t hang and you don’t disconnect from wifi, etc. All in all, if you can handle closing and reopening the app once in a while uploading the half-terabyte of photos you shot over the past year, it works.

So why not move to another provider like Backblaze that supports rclone? Because I’m lazy, and when I poked around recently, these other providers demand to have an app scanning your hard drive to back stuff up – which isn’t what I need, I need to upload organized archives of files once in a while – which it would seem like a tool like rclone could do, were it not for places like Backblaze requiring the user to pick random uuids that somehow don’t clash with other users uuids for buckets that files go in, and don’t forget that the buckets are a max of 5GB, and if you have a file larger than that, don’t forget to manage X buckets and to splice the file back together when you download it back, and even without that problem, don’t forget to organize all of your files into 5GB chunks like we did 20 years ago burning DVD-R backups, what the fuck, Backblaze and every other S3-based bullshit cloud service? Let me upload my files, store them on ice for me reliably, and that’s it, that’s all I need.

For better or worse, Amazon Drive / Photos does that for me, albeit with a ton of pain.

Anyway, that’s the end of the rant. If you have a small amount of data and just want a nice online backup, look into Backblaze, google drive, dropbox, or others – Amazon’s Drive and Photos app are neglected and not worth the hassle. If you’re uploading large swaths of data every few months for off-site backup and don’t want to get into super technical S3 bucket math, Amazon’s photo app is seemingly the only option.

Unless, of course, you name a file this:

114 – Montage Of Heck (Long) [4-Track Tape Collage].mp3

That specific filename will not upload to Amazon Photos with the mac desktop app, but this one will:

101 – Montage Of Heck (Short) [4-Track Tape Collage].mp3

From some theorizing and googling, to me, it looks like the mac app isn’t URL encoding brackets when it attempts to tell amazon’s servers about the file, and tomcat on the server side of things is bitching about the brackets not being escaped. I know this, because this file uploads fine (with brackets replaced with parens):

114 – Montage Of Heck (Long) (4-Track Tape Collage).mp3

Seems like a simple enough fix, someone on the mac app side needs to double check that bracket characters are escaped in their URLs per RFC 3986 – and maybe that’ll happen when the app is updated again in 2024.

On the off chance that one of the Amazon photos app developers ventures out of the Amazon echo chamber that currently prevents any sort of user feedback on their forums and reads this post, here’s relevant log data from the app:

OsBuildNumber: Mac 12.2.1
CrashTimeUtc: 1646432324428
CrashType: Managed_Transfer
CrashDescriptor: 6c3a72fa8f89f91bf6fd655a29d738d5
ContentType: Unknown Http Response Exception
CrashDuplicateCount: 1
CountryOfResidence: US

Request: POST[4-Track+Tape+Collage].mp3&fileSize=53038304&conflictResolution=NONE&suppress=DEDUPLICATION&kind=FILE&parentNodeId=icX0crQRQO-NupvTRc0iOw

Amazon.CloudDrive.Services.AmazonHttpResponseException: Unknown error occured
HTTP Status 400 – Bad Request - 
Invalid character found in the request target [/v2/upload/multipart-upload?name=114+-+Montage+Of+Heck+(Long)+[4-Track+Tape+Collage].mp3&fileSize=53038304&conflictResolution=NONE&suppress=DEDUPLICATION&kind=FILE&parentNodeId=icX0crQRQO-NupvTRc0iOw ]. 
The valid characters are defined in RFC 7230 and RFC 3986
The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).

java.lang.IllegalArgumentException: Invalid character found in the request target [/v2/upload/multipart-upload?name=114+-+Montage+Of+Heck+(Long)+[4-Track+Tape+Collage].mp3&fileSize=53038304&conflictResolution=NONE&suppress=DEDUPLICATION&kind=FILE&parentNodeId=icX0crQRQO-NupvTRc0iOw ]. The valid characters are defined in RFC 7230 and RFC 3986

Anyway, in summary, I wouldn’t post a useless screaming-at-the-void post such as this if it were possible to contact the amazon team and tell them something is wrong without getting roadblocked by twitter bots and the usual 21st century customer service gatekeeping circus of insanity, so here we are. Hopefully someday this issue will be seen and fixed, and perhaps the other glaring issues will be resolved as well.

Minecraft – A Software Engineer’s Experience Part 2

First, you should probably read Minecraft – A Software Engineer’s Experience Part 1.

August of this past year is a blur to me – a month remembered in terms of Minecraft. I spent the entire month enthralled with the possibilities the open-ended game allowed, playing most evenings and weekends, habitually.

Early on in the game my friends who played with me told me that I needed food to survive. They did this shortly after they had ridded our world of food, slaughtering all of the animals on the island and cooking the resulting meat for their own food stores.


Minecraft emulates the real world with incredible detail in a number of ways, and one of those ways is in spawning an animal every once in a good long while. Two animals can breed to create a baby, and a player can encourage this by feeding the parents.

Feed a cow a bit of wheat, he’ll display love bubbles animating above his head – if he finds another cow, they’ll make a baby. Harvest the cows and you’ll have food to survive, as well as leather to make armor or books or a variety of other things.

A common tactic in the game is to build a fence around a large area, lure a number of animals into the pen and breed them like mad.

That’s the theory, anyway.

Problem is, the infinite-food-supply theory depends on your teammates not killing off all of the animals.

Fortunately, there are other food sources – grass begets wheat begets bread which is fuel for you character to live on for another day.

So, we weren’t all dead, but we could have been had the grass not been an option – or if, perhaps, my jokester teammates harvested all grass on the island and threw the resulting seeds into a pit of lava.

For a little while, I was wondering if this was what my teammates had done – I was already angry about the lack of animals and their carelessness, and a clear-cut conspiracy was forming in my mind while on my first hunt for grass seeds. A short while later I had a farm of wheat going, had some virtual food, and much like real life food – I started to feel better and hate my teammates less.

With food under control I came up with a variety of things to do, and did those things. I was happy in my little island world for an entire real-life month just subsisting on stone-age technology – some bread, a pickaxe, and a sword. I mined for hours and hours, not knowing what I was doing. All I knew was it was pretty hard to find coal, and I needed coal for torches (light) and furnaces. I also needed some other rare elements, iron, and diamond – resources spread throughout the game with distribution algorithms not too far off from real world distributions of these elements.

My friends’ initial carelessness with the animal resources on the island sent me down an conservative environmental path of thought for a while after the food situation was taken care of. In fact, that act of wasting resources in many ways framed the way I interacted with the game for the entire first month I played it – clearly resources were limited, I thought.

I spent a lot of time just gathering stacks and stacks of wood (always being careful to replant the trees afterward), and digging up as much coal and iron and diamond as I could find.

I was an engineer in this Minecraft world, whereas my friends were a real life artist with his life work self-evident in the amazing beautiful things he builds in the game, and a real-life craftsmen who can build things in real life that I could only build in Minecraft. My primary concern, inspired by the experience with resource limitations earlier in the game, was to play resource manager – I would mine and mine and mine, and give resources to my buddies so they could build cool things.

At a certain point in my digging, I started wondering how many game hours I would go before all of the coal was gone. How many blocks of goal does the game have? A few thousand? Probably only a few thousand, right?

Because of this reasoning, I was careful to save my stash of resources and always be sure I used them for a good cause – because the resources would one day run out, and then we’d be stuck in a normal RTS end-game in a world barren of fruit.

Somewhere deep underground, while aimlessly digging around for more whatever, I had a realization based on a memory.

I remembered how when I was younger, my friend and I had thought it would be funny to use the game Pikmin as a manager testing tool – something to gain insight into how a person’s personality would affect their management responsibilities and their employees. If only the companies we worked for would screen out managers hell bent on productivity at any cost, etc.

While digging out yet another 64 stack of stone, far undergound, I mused to myself, “Politicians should have to play this game, that’ll teach them!” – what better way to teach the world about limited resources and ecological ruin than to throw them into a simplistic mini-world simulator on a world where my jerk friends Jon and Justin have greedily killed off all the livestock? Perfect.

Toward the end of August, I was growing bored. I had been on the server nonstop for most of 20+ evenings, and my friends had been on here and there. I felt many times as if I was working alone, and I just ran out of things to try – there were other things to try, I just felt alone and bored – what was the point anymore?

That last weekend of August, my friend Justin joined the game and he asked me if I’d like to go see Jon’s mountain hut, far far away. I said sure, and he told me to prepare with several boats and wait until morning, because the boat trip would take a full 15 minute day to travel *most* of the way. We waited until morning and set out.

Again, like at the very beginning of the game, I followed Justin in a boat toward something much bigger than I expected.

We traveled for what felt like hours, following the coast of this huge desert area called a ‘mesa’ biome. Sure enough, the sun set just before we made it to our “almost there” stopping point.

The distance we traveled by boat impressed me, deeply. For an entire month I had pre-supposed the entire world was perhaps 1000 blocks or 2000 blocks in length on a side, but we had traveled nearly twice that in one day.

During the night, while waiting for day, I told Justin all of this. He laughed, and said: “No way man, the game has a theoretical limitation of 1.4 times the surface area of the Earth.”

Mind blown.

All this time I had foolishly taken the simple 8 bit style indie graphics and experience with every game ever made before including big MMOs to mean there was a certain limitation to the game and we were just playing on a big randomly generated block of land – this was untrue. The game’s worlds are proceduraly generated as you discover them – a player nears a 1000×1000 block that’s never been seen before, and the game generates that ‘new area’ on the fly, seamlessly fitting into the 1000×1000 blocks around it.

The worlds of minecraft are so large that you don’t have a map with an “island” and a “mesa” – you have a world with mountains, frozen forests, dark forests full of redwoods, intimidatingly huge oceans, deserts, mesa’s full of clay, open fields, hills, swamps, and more. Each so-called “biome” seemlessly jigsaws into another in such incredibly subtle but amazing ways that you never even think about it, it just looks like “the real world”.

The next morning, we make a half-days travel on foot (about 250 blocks) through some mountains – the first I’ve seen in the game, to Jon’s hut on top of the hill. At the time this was a simple set of four walls and a bed on top of the largest mountain Justin and Jon had ever seen in the game. You could turn your game’s graphics levels up to maximum depth drawing and see for what seemed like miles – mountains in one direction, ocean in another, and unending forest another – it was incredible.

Coincidentally, right around the time we were going to Jon’s hut on the hill, Jon joined the game for the first time I’d ever seen him in-game. He and Justin had played a little while before I joined – they had started our Bay island, and then, they went on a trip. The trip left them in these mountains, and Jon setup a hut and quit for a month.

Justin and I were in Jon’s hut, with a nice wood floor, and I had a bucket of lava in my inventory. I saw that Jon had joined the game, and quickly mused on the chat that “I think we should give Jon a housewarming gift, literally – I have a bucket of lava here in my inventory hang on a sec-”

At precisely the moment I said that, I met Jon’s character in the game for the first time.

“Oh. Hi.”

By the end of that evening of gaming, Jon had reduced his hilltop house to a solitary bed on a mountain top and moved somewhere secret.

Was it something I said?

We spent that game-night in Justin’s so-called summer getaway – a little hut at ground level below a magnificent mountain that had a lava flow coming out the side. His little summer getaway had a single door and faced a little stream. We fished for a while, but fishing that way was claustrophobic. A moment later, we took a minute with our pickaxes and expanded the house to have plenty of room for two to fish safely – adding a little jaunt around the corner of the stream to the house.

It was at this point that Justin suggested we head back to the bay – another day’s boat ride seeing the mesa that I’d already seen. We had crafted compasses in hand, and knew the coordinates of the bay, so I suggested that instead we try to make it back on foot. Home was over 2500 blocks away and making it home on foot would be a perilous journey we most likely would not survive.

Naturally, Justin was excited about the idea of adventure with potential death, so we started work.

We mined some coal and wood, fished a bit, and stocked up for our trip.


Our trip took us 5 game days, or about an hour and a half of real-life time, and throughout the trip I grew ever more impressed without truly how massive and expansive the game is. Traveling 5 blocks a second on water on a boat everything feels a bit smaller – like looking at cars from an airplane window, but your sense of scale is wrong – so it takes a truly long boat trip or flight to really appreciate how big this world really is.



As we traveled along we saw the tallest trees I’d ever seen, mini grand canyons, and forests that went for miles. We traveled by day and dug in each night, keeping ourselves safe from monsters.



On our second day home we nicked the corner of the massive mesa we had skirted with our boats on the way to the mountains. As night approached, we climbed to the top of this mesa hill and dug in, taking in a magnificent sunset looking out on this cove that was a stark contrast of life and death – a land mass of desert barren of life unceremoniously holding back a beautiful bay full of fish and life. As we watched, we saw monsters in the distance spawn before our eyes and we were happy to be safe at the top of the hill.


Justin had seen it all before and played the game a million times longer than I had, so he generously spent that night fortifying ourselves from the monsters better while I sat there completely useless, taking in the view, and mocking him while I did it.

The next day we set out and quickly found a small town of villagers the game had generated. Villagers will trade you some item for some resource. There are some items you can only get from villagers without a ton of effort, so villages are an exciting find and extremely valuable.



Justin was excited about the village, and I was excited about the fields full sheep of sheep around the village. I named the village sheeptopia. We spent a full day without travel, just roaming around the village and harvesting wool from the sheep. We spent the evening in the village, fending off monsters. The next morning, we marked the village’s coordinates on our shared google document recording such information, and went onward home.



Three game-days later we were home, we took the last stretch by boat and found our way back to the very first spawn point I had spawned on a real-life month ago.


We went to bed and quit the game for the evening.


I went to bed in both real and virtual life that evening feeling conflicted.

I had just witnessed the true natural beauty of the minecraft simulation of the world – untouched by the human virus, unsculpted and strip-mined by the human touch.


I had thus far always preferred trying to leave as much of the natural world the same as before, because my limited skill set would never allow me to recreate the world looking as perfect as it had before I ruined it.

My friend Justin, the artist, may very well have been able to sculpt a convincing hillside atop a huge strip mined hole, but this was beyond my abilities – so I was careful.

When I looked at the hillside with my home, I wanted to see a little jut of glass for my entry way, and nothing more. I did not want to see a row of utilitarian stone boxes like a scourge of industry spreading like a rash across the hillside – I wanted to, if at all possible, leave everything as it was or better.


The natural beauty I had seen on our 5 game day trip back across the world impressed me – it was so beautiful and amazing. We had crossed a thousand procedurally generated lands that melted into each other in such a way that was a close match to true-life nature. I took this all in as we traveled, and enjoyed the simple and yet majestic beauty of the lands we were traversing.

At the end of it all, signed off for the night, ten minutes into real-life bed, the human virus in me awoke. I wanted to see that beauty again, forever. I wanted to *own* some of that beauty.

That night I decided to move my inventory to that same mesa cove overlooking the harsh death vs life simulation and setup a new shop, a new gaudy mansion all my own.



I spent days of game time gutting the insides of that hill – with an aggressive ferocity I had not harbored before. This previously beautiful place was now mine to “improve”, and I wrecked it with abandon.



When was all was said and done – I loved the inside caves of the hill, but walking around outside always reminded me of how pretty the place looked before I arrived, like this:


During that trip with Justin I had seen such beauty, something like a god’s work, and in prime human fashion, I had decided within the span of an hour that I deserved to ruin it, I deserved to be god too.

I also realized making politicians play Minecraft would be a bad idea. They should play the PS3 version, that version is limited to less than 1000 blocks a side – the PC version we were playing had damn near infinite resources, more than we could mine in our entire real-world lifetimes.

And, what do you do when you encounter a supply of something that will last greater than your real-life lifetime? You waste it like it’s going out of style, as fast as possible.

Long gone were my concerns of resource preservation. I no longer cared about precious animals and precious landscapes – I could always take my riches and spoils, and use them to upgrade to another place I had not yet ruined.

Case and point: My very first night back on that mesa, I couldn’t quite make it to the mesa, but I did make it to sheeptopia.

Justin warned me never to sleep in a village at night, because monsters spawn near players and will come eat the villagers.

Jason being Jason, I didn’t listen.


Within a few moments Justin’s chat log was endlessly repeating, every few seconds:

“Jason was killed by a Zombie”
“Jason was eaten by a Spider”
“Jason was killed by a Zombie.”
“Jason was killed by a Creeper”
[Jason]: Fuck
“Jason was killed by a Skeleton”
“Jason was eaten by a Spider”
“Jason was killed by a Zombie.”
[Jason]: FUCK!!!

And so on.

Ten minutes later, the most beautiful Minecraft morning on memory dawned and the Sun came up into the sky, causing the hordes of zombies to magically alight in fire and die.

When all was said and done, sheeptopia, the village, was no more – a ghost town stood where once a small village of villagers lived and happily traded goods with us. While I was failing to fight the monsters of the night, those very same monsters killed every last villager in the village.

My greed and carelessness, not unlike my friends’ slaughtering of the bay livestock, had permanently killed off the village.

Ironically, those friends of mine who I was so mad at for being so greedy, those live stock they killed off – they did eventually respawn in the bay, albeit very slowly. The villagers though, they never respawned again – what I had so callously and foolishly done was indeed permanent.

I had been so angry at my jerk friends, so judgemental of their careless ways – then I took a trip and saw amazingly beautiful things, and then I took that experience and decided to turn into a monster I had been decrying all along. From PETA Activist to “Oh well, there’s so much land now, who gives a fuck, it’ll outlast my attention span.” in one short real-life evening.

I had turned into the monster I was so mad about from the beginning. I had yet again proven the rule.

“If you hate something, don’t you do it too?”

I was on my way toward becoming a captain of industry, a major part of a disease slowly spreading across our Minecraft map.

Fuck the environment, let’s get rich. Right? Right.

Continued here: Minecraft – A Software Engineer’s Experience Part 3

Music: 65daysofstatic – Wild Light

Minecraft – A Software Engineer’s Experience Part 1

After years of pestering, my friend Justin convinced me to try Minecraft one evening this past summer. That was early in August. Thanks to Justin, I do not remember August, September, or October of 2014 in terms of real life – I remember these months of my life in terms of Minecraft.

That first night, I purchased the game, joined his server, and spawned alone on a tiny island in a massive ocean. The island about 10 feet deep and 100 feet long. There was a tree, and a bunch of light tan and green 8 bit blocks to walk around on. I was surrounded on all sides by an ocean comprised of cubes of water. One tree, some sand, some grass, some dirt, and an incomprehensible stretch of water without any other bit of land in sight.

My initial thought? This game sucks.

A moment later my friend Justin’s character came to my little island in a boat he had made out of some wood. He told me to right click on the tree’s trunk. I did this and my fist punched it a few times, causing that block of the tree’s trunk to pop out and float on the ground as a little block I could pick up.

He then told me to chop the entire tree down. I did. He told me to put the tree pieces into a item-building area in my inventory screen in a certain way. I did. That created a “crafting table”. Justin then told me to put the crafting table down, right click on it, and build a boat with my remaining wood. I did.

Next Justin instructed me to build a second boat, because boat mechanics in minecraft are infuriating – if your boat touches even a bit of land at a speed of greater than zero, the boat explodes and you helplessly drown in almost all instances.

My thought at this point? This game sucks.

We build boats, jump into them and Justin says “Follow me”. What I didn’t know then was that the journey Justin was inviting me on would be one of incredible self discovery and enjoyment. What I did not know then was the incredible depth of the game I had just labeled “sucks”.


We travel across the water, chasing a square sun setting in the west. “The sun does this every fifteen minutes”, Justin says. “We’re safe tonight, because we’re out on water, but you need to dig in somewhere safe for night once we hit land – because monsters that will kill you spawn at night.”

I thought, “Monsters, got it. Whatever. Looks like a kids game so far.”

Albeit, a very pretty kids game:


We chase the setting sun for five minutes and then I see it, an unassuming but well-lit house atop a hill, built from scratch like a 3d version of pixel art built pixel by pixel – our friend Jon’s house – the beacon of civilization and safety for all new players on the map.

We had arrived at ‘the bay’ – a medium sized body of water tucked into the corner of a much larger island. An island large enough for a beginner to get lost on. Justin leads me to his house near Jon’s – a weird hybrid of existing natural game-generated environmental beauty with a short unassuming roofed deck cut into the wall, again – well lit. We wait until morning, Justin tells me to go find a place and dig in.

All I need to do, he says, is find a wall somewhere, use my fist to break some blocks out of the wall, then build a door out of some tree wood to block the entrance. “Don’t forget about the door!”, he says. The door keeps monsters out.

Hole. Door. Got it. Whatever.


Justin log’s off, it’s his dinner time.

I’m still highly skeptical.

I do what he says, I dig a hole in a wall looking out on a sandy beach and water, put up a door, and start breaking down other blocks. A few minutes later I have a lot of blocks of dirt and rock in my inventory and I want to carry more, so I google “Minecraft store items” and come across the incredible, amazing, Minecraft wiki.

That wiki, and what would happen next, was my undoing – in both the video game, and real life.

The wiki told me I could make a treasure chest out of 8 pieces of wood, and I could make two chests, place them side by side and make a bigger chest that holds more stuff. I knew how to build a new crafting table, so I built that, built the chests, put my stuff in the chest and looked at the wiki a bit more.

I was alone on the server, it was nearing night, and the wiki said I could make a bed and “sleep” in the bed for 15 second to turn night into day. I went out into the night, like a fool, disregarding my friends advice about monsters in the dark. I sought some sheep to harvest wool from. My friend was the fool though, I killed three sheep without problem and didn’t see any monsters at all!


The trick was, sun sets, and a few minutes later monsters start spawning until dawn. Had I known that and been less of a skeptical jackass, I wouldn’t have left the door way to my hole open behind me in the night. Had I paid attention to Justin’s advice about monsters and the importance of a door, I probably would have kept the door within sight and googled how to make a sword rather than a chest for items first. But, being who I am, I did none of those well-advised things I should have done – and I learned the hard way.

I walked into my hole, left the door open behind me, looked away from the door toward my crafting table, starting putting the blocks in place to build a bed when suddenly I heard a fizzling sound like a fuse on a firecracker. Two seconds later a monster called a ‘creeper’ exploded right next to me like TNT. He blew my hole into a much bigger hole on the side of the mountain, and killed me instantly.

“You are dead. Respawn?”

Wait, what? I had a few days worth of stuff in that chest! Did that monster blow up my chest too?! Justin had said items disappear after ten minutes if they’re not in a chest. Perhaps the chest explodes like a piñata and my stuff is laying around? If so I only had ten minutes to get back. I panicked.

About twenty real-life minutes later I was very literally on the edge of panic and tears – not only had my stuff probably despawned completely, but I could not find my hole – I was lost. Me, the beginner, on this island that was just big enough for a beginner to get lost. I wasn’t lost lost, but I lost my “home”. An hour or two of effort, gone – just, gone.

I was lost, alone, and infuriated. Nothing drives me more than the chance to get even and make things right (I harbor a severely unrealistic sense of justice..), so I was determined that though I may quit this stupid sucky game, I would at least find that hole I had dug before I rage quit.

I never found the hole. Instead, I found addiction.

A real-life hour, or what felt like a year, later, Justin rejoins the game.

“Dude, I lost my hole. Like, I can’t find it. This green monster exploded and I just gave up and dug a new one. I figured out how to make glass though, this game is crazy!”

Justin led me to my original hole near the beach, an embarrassingly easy distance away. The hole was exactly as expected – a much larger hole blown up by this green ‘creeper’ TNT monster from hell, all of my hard work gone, only the crafting table in the corner remained.



While Justin was offline I had self-taught myself some tricks, dug a new hole, put up a glass wall, which required making a furnace from 8 stone, sticking coal in the fuel part and sand blocks in the cook part, and waiting on the sand to cook into glass.

By the time he had logged back in, my boiling rage at losing my original home had faded into a budding addiction. I was learning to shape the minecraft world as a sculptor would shape a statue. Although I am not a very good sculptor:


An hour later I was digging a massive hallway in a random direction and Justin screams “STOP!!!” on the chat – he can see my nametag hazily floating in the distance, through the back wall of his house. He digs my direction a few blocks and sees this insanely large hallway I was aimlessly mining. He looks around, tells me where I am. He pauses, looks some more, says the hallway is cool, and now our houses are connected.

I tell Justin that I keep dying because my health keeps draining, he tells me I need to get some food – go kill some more sheep or pigs. I can’t find any on the small island we sjare, because my two friends, Justin and Jon, went around and killed all of the animals not long ago for their own stash of sustenance, so I was screwed until the game would spawn more animals.

Rage quit.

A real-life day later I log on and Justin has prettied up the place – there’s artwork hanging on the walls of the hallway between our houses. Justin’s friend Andy has joined the game and while I’m mid-rant about no food being available, Andy tells me I can go right click on grass and get seeds from the grass, use a hoe to till a soil block near water, and put the seed in the ground with a click. Five minutes later – a wheat stalk is ready for harvest.

Three wheat stalks together on the crafting table = bread. Bread = a good substitute for meat when your fellow players have completely ruined the ecosystem by killing every last animal. Fortunately they can’t kick a bunch of carbon dioxide into the atmosphere in the game, so I’ll always be able to grow some wheat. At least there’s that.

I instantly kick into Jason-the-engineer mode, automating my way out of worrying about food – I build a massive farm. Not understanding that I can build a bucket to transfer water blocks, I take soil blocks and build a massive deck of dirt block block out into the sea near my house. I make a farm big enough to harvest 64×3 wheat stalks, and fill an inventory slot with 64 bread (enough to last for several real-life evenings of game play).



Four real-life days after the Monday I started playing the game, my wife and I go to lunch – abnormal for us because we work far apart from each other and she has a short lunch break typically. Today is kind of an exception though, she’s off early, and she hasn’t seen me since Monday (when I started playing Minecraft).

“How are you doing?” – She asks, happy to visit with a long lost friend.

“I’m sorry I’ve been playing the game so much, but, Amanda, this game is like no other game I’ve ever played, I’m having fun in a video game more than I have in countless years, can I tell you a story?”

It should be mentioned that my wife has immaculate patience and kindness, she allows me to go on.

I explode with a cheerful recounting of my last few days of playing the game, occasionally choking up as I recount some of the incredible emotions the game has made me feel for the first time in a very long while.

My childhood was full of fear. I’m a worrier at heart, as are my parents. As a kid, my parents were constantly threatening to kick me out of the nest for the slightest wrong (a marilyn manson cd, for example), and that didn’t help matters. I was born a ‘little grandpa’, as my wife puts it, and I learned the meaning and comfort of safety and security far too late in life.

I endured college under a constant cloud, the cloud being the story my parents had tricked me into believing: “If you do not graduate college, you will not enjoy life, and if you get bad grades, we won’t pay for college and you’ll never make it or be happy.” There was always one of these stories, “If you don’t do something I say you must do, you will be sorry.” – for better, and for worse, I always trusted and believed these stories.

I was so worried about these stories that when school was nearly finished I saved every last penny of my last college summer job’s money in anticipation of graduating without a job and being heartlessly kicked from home.

In retrospect, with hindsight, the stories change as history march forward – now, 10 years later, firmly on my own two feet with solid financial safety (read: no chance I’d ever need to go back to my parents..), our parents predictably assure us that they never would have actually left us ‘on the street’. Our memories disagree and we’ve agreed to disagree.

I graduated college, and fortunately I found a decent paying job. For about two years I saved as much money as I could to build the fabled “1 year living expenses in case you’re on your own” nest egg. Hint: Nobody does that, unless they’re scared worriers like me.

Say what you will about threatening parents, but mine inadvertently tricked me into being a very cautious person financially, and my life is extremely comfortable thanks mostly to good fortune and a little bit due to financial responsibility.

For about a decade of my life from 15 or so to 27, I lived my life in fear. Consistent fear and anxiety over not being able to pay the electricity bill and being unable to cut it in this big bad world that my parents were so adamant was out to get me and would offer no help.

Life, of course, is more complex than a single emotion – I had an extremely privileged and fortunate upbringing, and in truth I never wanted for anything that was a necessity. Still, being the ungrateful little shit that I am, I obsessed and worried about this real life fear of failure. The fear affected my life and development in profound ways. The cloud of fear and worry had such an affect on me that in retrospect I regret many thousands of missed beautiful moments I skipped over or missed with my obsession on responsibility and justice – so many moments missed because I couldn’t see beyond fear…

I wouldn’t go on rollercoasters – I already feared enough, why ‘enjoy the exhilaration of fear’?

I would never go on random camping excursions with just a backback – Why take a chance where you could be afraid or hurt or lost?

I would never watch horror films or play scary video games – I fear enough in real life, why bother?

And so on.

Roll back a few years before the drama, back in the days before parents turned the corner from “you are our son, we’ll always be here for you” to “you need to grow up or else”. Coincidentally, they turned this corner around the same time I became an insufferable rebellious little shit.. funny how that works.

There’s always more to the story, remember that.

Before “grow up or else”, in the halcyon days of childhood, my friend down the street had a computer in his room – with one rule and only one rule – we weren’t allowed to play violent video games. Naturally, the rebellious asshole from up the street (that’s me..) obtained a copy of id softwares seminal 3d first person shooter horror game Quake. We installed the game, and had a blast.

There was a problem with Quake though – it’d be safer to play in the evening after parents were asleep so we would not get caught, but the game was so damn scary that we didn’t *want* to play it at night. The game gave my friend and I real-life nightmares. So, we only played it in the day.

We were so filled with fear for the game of the crazy horrific monsters therein that we’d rather risk punishment and losing the game than play it at night.

That is the last time I remember be afraid of a video game.

The last time I remember before Minecraft.

Back in the present, at lunch with my wife, I recount how Justin taught me to dig down to just the right level for mining diamonds, iron ore, and coal for more efficient and longer lasting tools. How I happened upon a series of lavafalls (a water fall made of lava) deep underground in an expansive cavern, and how I made a house full of glass protecting me from the lava.


I told my wife how I learned the lava blocks could be used in a furnace like coal, so I had created 30+ iron buckets and found an underground lake of lava for an infinite supply of coal to make “the glass factory” – a bank of 25 furnaces powered by lava kicking out glass far faster than I could ever use it.


I told her how every night I’d go to real-life bed satisfied with accomplishing some goal in Minecraft, only to think of something the very next morning that I *must* do before I call it quits. One day it was ‘I must build an underground railway between the bay and Andy’s distant mesa’. Another day, it was ‘I must take some lava blocks, dig a hole in my house, put the lava at the bottom of the hole, put a glass floor over the hole and have a bed in my home above a pool of lava.’ ‘I must figure out some way to easily kill and harvest loot from the monsters coming from the ‘zombie spawner’ near my house – those monsters give me free armor and swords!’ .. ‘I must make a fishing dock way out on the water to safely fish without worry of monsters coming by.’

And so on.

At the end of my story, with my wife half asleep over our lunch, I tell her about fear in Minecraft. I remind her of my financial fears when I was younger and how lucky we are and I am that I’ve outgrown and been fortunate enough to live without that fear for a little while. I tell her about how when I was a boy, a friend and I were so scared of a video game that we’d rather lose the game if caught than play it in the dark.

I tell my wife how I don’t remember fearing anything in a video game for a very long while, until the night before, in Minecraft. Until, the redwoods.

As video-game-time in minecraft wore on, my house turned into something a bit more impressive. I found some diamond, I had an impressive bank of furnaces running ‘the glass factory’, and I was on the verge of finishing the game – I had done what I wanted to do.

For whatever reason, as my last act in the game, after about two weeks of playing, I decided to extend my fishing pier. One last go-out-with-a-bang big impressive accomplishment – a pier that goes out so far that you couldn’t even see the end of it from the house.

I started building the pier, happily plugging along, when I noticed across the way, in the distance, there was another island. A very dark island with massive trees. The trees were what the game called ‘dark oaks’, but what I called ‘the redwoods’.

Each tree’s trunk was 2×2, one redwood trunk was 4x as much wood as another tree, and they were super tall. Where other trees could be axed down while standing on ground, axing a full redwood down would require building an intricate series of ‘steps’ up into the tree’s trunk as you axed your way upward.

By this time, several days into the video game, Justin had taught me that dark = monsters. Even in the day time, a dark room or dark forest would be dark enough (light level 7 or something) for the game to spawn a monster. To prevent the game from spawning a monster, a player places torches around on the ground or walls to light the area up.

I knew about torches, so I stocked up on my way over to the mysterious redwood island with a new goal in mind. I was going to chop down a redwood and start a forest of them on our bay island.

I boated over to the ominous island, dark as night at the height of day, and stood on the shore. I explored a little, perhaps 30 blocks (30 feet) into the forest – and I discovered there were so many trees that my torches would run out far before I could light the area well enough to prevent monsters.

At that point, I had a choice to make – would I haul tail back to our safe bay island, or try to make for some spoils anyway and get the hell out?

Naturally, I went for it.

I chopped down two full redwoods without any bother from any monsters at all. I was extremely careful to stay out in the very small lighted area of the shore and do my work. I took my wood, and my redwood ‘sapling’ (a tree you can replant) that fell from the tree, and headed toward my boat.

Deja vu. My back turned to the forest, my life bar starts draining and my screen is jumping erratically. Somewhere in my mind I’m immediately subconsciously replaying that first moment a creeper blew my little house to hell. I’m mentally paralyzed and unable to act. I’m being hit by arrows. I finally manage to look behind myself and turn just in time to see three bow-and-arrow skeletons and two zombies gun me down.

I gasped in real life. My heart was racing, and for the first time in perhaps 20 years, I was frightened by a video game – I had so much time and emotional investment in the video game that the game had started having emotional responses beyond a the norm of addiction and conquest – and it was amazing. For the first time in as long as I can remember, I was responding to a video game with such enrapture as I had once a million years ago, as a child playing quake in the day light.

For days and days on end, my real-life waking life was consumed by the game. Every day I had a “one final thing I’ll do then I’m done”, then it’d be every other day, then it’d be every week. Then I’d get bored, store all my inventory safely, and run out in some random direction naked as the day I first spawned on the tiny island, with nothing, and start again.

This series of posts will recount some of those stories, but more importantly it will finish out with a series of self-discoveries and real life discoveries I would not have had without this incredible game entering my life. Thank you, Justin.


Please do read on, we haven’t even start talking about building machines.

Continued here: Minecraft – A Software Engineer’s Experience Part 2

Music: Caspian – Waking Season, and Hymn for the Greatest Generation.

Pikmin – The Video Game Interview Question

For the past decade and a half, Pikmin has been my most favorite game of all time.

As a software engineer with an affinity for automation, tooling, and efficiency – Pikmin struck a chord with me like no other game had before. Pikmin is a unique twist on real time strategy games (such as the command and conquer series, warcraft, or starcraft), where resource gathering equates to winning the game. That is, Pikmin is an RTS without a strong battle tactics mechanic.


Instead of becoming the greatest war general, Pikmin simply encourages you to gather enough resources to move forward while using time wisely. What sets Pikmin apart from many other video games in the genre is that the game has concurrent goals. It is complex enough to allow multi-tasking on an impressive scale. Whereas a typical RTS would have a singular goal (gather some ore, build some tanks, crush the enemy), Pikmin’s goals are distributed – you need to collect X pieces of a ship, and pieces can be collected in paralell, with one team of Pikmin working on a task blocking one goal while another team works towards another.

In Pikmin, instead of a god-like overview of the entire world, you are a tiny spaceman who can only manipulate the resources within your field of view. You are effectively limited to doing only what one person can do in real life – one thing at a time in the place where you are. Instead of clicking a map 2 miles away to assign a new directive to some tank, the strategy to Pikmin becomes efficiently subdividing your army of Pikmin into concurrent tasks – with the occasionally infuriating limitation of only being one person.


Your little spaceman only moves so quickly, and he’s purposely weak, as are your pikmin. There are monsters both small and large throughout the game; walls to break down; bridges to build; heavy items to move back to camp; and more – and one pikmin or one spaceman is effectively useless on their own in almost all cases. No monsters can be defeated with the spaceman alone, and breaking down a ‘beginner’ (soft) wall would take the spaceman or a single pikmin half an hour to break down, never mind walls made of stone that your spaceman cannot damage at all.

Put simply, your protagonist is not a one man team, and a spaceman behaving as a one man team will lose the game.


To beat the game, your spaceman needs to task 30 pikmin to breaking down that wall, so it falls in two minutes rather than thirty. To beat the game more quickly, your spaceman needs to assign one team to breaking a wall, while another is set to build a bridge, while a third under your direct control attacks some monsters to bring home spoils from monsters to create more pikmin.

Further strategy ensues when you’re given three different types of soldiers later in the game; red pikmin are strong fighters and can walk in fire; blue can walk in water but are quite weak; and yellow can jump high and carry ‘bomb rocks’ (for stone walls). If you’re familiar with the early 90s blizzard game The Lost Vikings, or perhaps Lemmings, Pikmin is those two games blended together – on steroids.

The game employs a day/night mechanic where each “day” of game time is only 15 minutes of time, and any pikmin left scattered around the level at the end of the day are eaten. So, accomplishing multi-day/multi-hour achievements takes planning and strategy. The game gives you a generous 30 days (7.5 real-life hours) to beat the game – my greatest record was 19 days (4.75 hours), this after dozens of times through the game, but record holders have beaten the game in 9 days (2.25 hours).


As a younger me, Pikmin appealed beyond other games because it allowed me, a software engineer (read: a person who enjoys solving puzzles), the opportunity to solve a well-understood puzzle with enough complexity built in for many possible solutions to exist. The game provided a clear goal, simple to understand tools to get the job done, a scope, and a generous timeline – a dream software project if I’ve ever heard of one.

I distinctly remember building my own hobby software projects while in college and looking forward to such dream projects in my dream career to come – “Man, working in software is going to be like playing Pikmin all day every day!”


How adorable youthful naivety and ambition can be. Right? Right.

Real life software projects are like any other project anywhere ever, limitations abound. There’s always one or more of the following: not enough time, too little budget, inexperienced teams, unknown scope or requirements, surprises, political land mines, and more. Sorry to say, the dream software project is a dream.

Back in my college days, while playing the game with my friend Greg (my 6th or 7th play through, his second or third perhaps), we were talking about the philosophical aspects of what made the game so addicting to us. Whereas many ‘core gamers’ dismissed the game as a childrens version of an RTS war game, we were hopelessly enamored with the game’s charm and subtle complexity.

During our discussion that evening it occurred to me that the video game Pikmin would make for an excellent psychological evaluation for real-life managers. Think about it – the game is essentially a management simulator – you are one person with limited power on your own, but with effective management skills you can accomplish amazing goals you could not have accomplished on your own.

My youthful idea for the management test worked like this: Have the manager play through the game once, and watch them play.


The first time through the game, the player is simply discovering the rules and boundaries, the scope of what he or she is up against.

During this discovery phase of the game, much can be learned about how a player approaches new challenges that he or she may have little interest in achieving. Does the player dismiss the game due to a lack of interest? Does the player enjoy themselves despite a lack of interest? Does the player regard her little pikmin employees as a breathing animal to protect and nurture, or as a disposable means toward the ultimate goal? How does the player react the first time they walk a red pikmin into a pool of water, do stand by and watch the pikmin slowly drown during that generous ten seconds they have to rescue the pikmin with a single button tap? Do they panic? Do they even try to save it?


Further – the pikmin are not robots, they mimic real life humans in a surprisingly and infuriatingly real way – that is, occasionally these little minions have a mind of their own and decide they want to do something else.


What better way to test a candidate’s cool than place a video game in his hands that he can’t truly control? Perfect.

Later in the game, with experience under their belt, the games entire scope and toolset has been revealed – but, there are 20 pieces to collect and only 15 game days left – the player must multitask, or die. A prodigy player may already be multitasking from the beginning, but a mere mortal will likely get to day 27 with 9 pieces remaining, which provides potential for another psychological insight – as the time pressure cooker ramps up, how does the player behave?


Suppose a player has a final piece left to collect, and they’re leading a team of 10 red pikmin (who drown and water) joined with 90 blue pikmin (who do not drown). The player discovers the final piece simply needs to dragged across the water to the home base – but time is closing in. Does the player take a few seconds to subdivide their team and leave the red pikmin safely in shore, or do they not? What does it mean when the player chooses one way or another? Is goal greater than the journey, or the other way ’round?

In college, as a young idealist with a myopic tunnel-vision non-empathetic world view of career, I thought pikmin would be the perfect test to find the most efficient and effective team leaders – which to me was very narrowly defined as a person who would gain maximum efficiency from his team. Back then, my ideal manager would have been a manager who would focus on and appreciate one of my personal strengths (naturally, right?) as an employee – clever efficiency. I am very happy that *good* real life managers are not so one-dimensional.

Fortunately real-life managers are multi-dimensional humans with differing personalities, strengths, and weaknesses. While one person may prioritize efficiency and adore employee’s such as myself, another may prioritize bulletproof quality, while still another may prioritize workplace culture. Indeed, an effective management team is, like all effective teams, a mixture of personalities – the whip cracker, and the cat-hearder; the single-minded goal seeker and the multi-tasking generalist; etc.

Pikmin makes for a great personality test because it mirrors real life in a simplistic, but beautiful, way. In many respects the game is a more entertaining and interactive larger version of Conway’s Game of Life. The game enforces limitations that drives many players mad (“The 30 day limit is stupid! I can’t win!”), it effectively requires the player to make choices and learn – it brings out the best and worst of players in very short order, all while presenting itself as a cute and cuddly “RTS game for children”. Incredible.

Perhaps a video game such as pikmin would provide an effective or fun way to screen or learn about candidate’s personality with a little more depth than “Tell me about your greatest success?”, or “What’s your greatest weakness?”. If I ever rule the world, or a small multi-national company (don’t worry, this won’t happen, I enjoy living life and video games.), I’d at least give the pikmin test a try.

Pikmin was first published in 2001 on the Nintendo Gamecube (amazon link), it was updated and re-released on the Nintendo Wii (amazon link). There are a number of sequels and spin-offs, I’ve documented some of those previously on this blog here.

Note that some of the screenshots shown in the post are from sequels rather than the original game. IMO the sequels are good, amazing even, but nothing compares to the original masterpiece.

Music: BT – These Hopeful Machines

Codes well, struggles with being an adult.

When I was younger, I promised myself I’d never turn out like my parents and their always-frustrated, always-busy, sad circle of friends, and yet..

When my grandfather was coming to town, he would mail a copy of a heavily detailed itinerary to everyone in Texas. He grew up in Texas, had his family in Virginia, and retired in Colorado. One of his children lived in Colorado nearby, and the other three ended up back in Texas. All of grandmother’s kin stayed in Texas all along, so one could argue the OCDish over-the-top itinerary was necessity – they had a lot of folks to visit when they made their annual road trip.

My grandfather’s name was Joe.

When Joe came to town, he always had one item on the itinerary of special interest to my brothers and I. Joe promised us that he would take us to the toy store and give us $10. This happened every time he visited or we visited him. He made this promise *long* before allowances became a ‘thing’ in the 90s. Long before parents started going on about teaching kids the importance of saving, and well before my parents realized the leverage an allowance would give them in the war against unruly children who hated chores.

My brothers and I would look forward to that $10, and the pure joy of going to the toy store to buy something frivolous. We’d look forward to this for weeks in advance, and Joe, always a man of his word, came through, every time.


A few months ago my brother proposed to his girlfriend. Elaborately. She knew for certain what was going on on the second stop in the morning – he was replaying their dating history, in fast forward, in the span of a day. They had been on 38 or so dates. Thirty six locations and ten hours later that day he popped the question.

That’s Jon. My youngest brother. An over-achiever and planner to the core. Always with the spreadsheets, with plans that stretch years ahead, to the week.

Screen Shot 2014-06-15 at 7.27.02 AM

(You don’t get a non-fake proposal shot like that without a spreadsheet.)

We all laugh at his fiance’s retelling of the proposal story because we all know in advance about this immaculate spreadsheet my brother had planning this insane 38-stop itinerary. As she tells the story it has this great twist. She tells it just like I have here, she knew for *certain* by the second stop what was up, but the trick to the story is that she knew with about 99% certainty what was happening about two weeks prior – when my brother, with all the plans in life, asked her to plan to do nothing the day he would propose.

It was, in a way, his one spot in his itinerary of life that replicated Joe’s toy shop promise. A brief moment of amazing planned amidst a sea of otherwise.

I had the opportunity / plan to quit a big corporate job a few years back. I was so pissed off at office politics, futility, and I had a fundamental anger and hatred toward something I used to love – I hated code. I essentially set a little plan out to figure out what would do me better. I tried this and that, and at some point said fuck it. I decide the answer was somewhere else, and I planned to go find it.

I broke the news to my wife, sheepishly, expecting backlash or worry. Instead she smiled and hugged me, and said something along the lines of “I’m so proud of you.” In reality, she probably said something way better like “fucking finally!”.


Her hug and belief in me was refreshing, it was like my grandfathers silly $10 toy shop promise. In the midst of a boatload of anger, frustration, and personal doubt – in a sea of otherwise, her hug was just a little moment of amazing.

Over the following four years I went here and there, contract, salary, corporate, startup, enterprise, mobile, whatever. Every step of the way I had a mental spreadsheet, and outline of continuums in my head – this elaborate rating system of all of the things about career. I was figuring out where I fit, what was right for me.

I’m a stubborn asshole, most would say. That’s the straight-forward way of saying I have to learn things first-hand, even when I’ve heard the truth beforehand. I fell for the sex appeal of downtown jobs, startup, mobile, the new hotness. I didn’t care for culture or all of the little nuances I would absolutely insist on now, but I learned all about them.

It took a bit of courage to step out of the comfort zone and try all those years of wilderness job searching. Lots of missteps and stubbed toes. Countless restless moments and what feels in retrospect like sheer stupidity and naivety far too often. Them’s the brakes when you’re a stubborn asshole who can’t be told and has to just do it to learn.

In the fall of last year I hit what felt like a supremely low breaking point. Four years since my split with safe corporate life, I was just ready to find a job and ‘sell out’ forever – stop looking for happiness and just give up. At this point last fall, I felt I’d tried all I was willing to try – I’d seen so many ends of so many spectrums that I didn’t really give a fuck anymore honestly. Delete the mental spreadsheet of pros and cons and career plans. Fuck everything.

For the second time, I hated code.

My grandfather, Joe, played solitaire. Everywhere he went, he played solitaire, and he smoked. He lived a modest life, but he was a bit of a pack rat and always had a plan. As a grand child, I loved his plans! His plans involved the following items, often:

* Toy store visits.
* Eating out with the whole family once per visit.
* Making the best smoked brisket I’ve ever had, often – as only a man bent on a life of plans can (as making the brisket involved waking up every few hours to apply a fresh coat of whatever to keep it perfectly moist).
* Commissary grocery trips, in which spoiled grandkids often got candy, and frazzled mothers of three got groceries at a discount.

But, his plans also included a lot of things that didn’t seem so fun. Namely, the parts where he went and visited other relatives in other parts of Texas and couldn’t hang out with us longer.

I suppose I should mention that my grandfather was military.

Joe was air force. He was in a war, though to my embarrassment, I’m not sure if it was WW2 or Korea or both. I do know this, he was shot, in the back no less, while sitting down in the food tent eating a meal. He had a purple heart. One of my uncles or my father has it now.

On his way back from whichever war, he picked up these beautiful japanese china dolls dressed in kimonos – 20″ tall works of art I haven’t seen elsewhere in my life.

Anyway he was a military guy. So, it’s not much surprise that he and his children (our parents, aunts, uncles) are all also pack rats with an inability live an unplanned day. It’s in the blood, perhaps.

Shortly after the 38-step proposal last fall, christmas came around. It was then that my youngest brother, Jon, sent everyone an overly-tedious itinerary over email. It planned his and her christmas vacation down to the hour for several weeks.

I had not seen an itenerary like that in years, in fact, since the last time Joe was healthy enough to send one and take a road trip. I immediately replied with laughter that his email brought back fond memories of our grandfather.

Joe was a stubborn son of a bitch. I suppose it runs in the blood. I’ll never forget the last time he took us to get some toys.

Joe was a smoker, and wouldn’t stop. Ever. Smoking gave him glaucoma, which gave him cataracts. Ever seen an old dog or a seal at sea world with cataracts? Watched them bump into something because they have 1/4 of their vision at best? Right, so the last toys trip was similar.

Joe’s cataracts were getting worse and we should have known better when he and my grandmother burst through the front door arguing about never taking a road trip again if he didnt get his eyes fixed. “OH CAROL YOU SHOULD HAVE SEEN IT, HE WAS ALL OVER THE PLACE ALL THE WAY DOWN HERE -” .. two seconds later .. “BYE MOM, WE’RE GOING TO GET SOME TOYS!”

We went and got our toys, me in the front seat, my two brothers in the back in his grandpa mobile – a comfy oldsmobile twenty years out of date. Half way to the toy store grandpa jumped the median for no apparent reason, attempting to get into the turn lane about 30 yards before it existed. Everyone was okay.

We were fine the second time too, when he did it again on the way home.

I feel extremely fortunate to say there are only perhaps a dozen events in my life where I’ve seen a hero fall, caught a brief glimpse of the truths of time. Joe had eclipsed 80 years and smoking was finally catching up to him.

Only a few times have I seen my preferred delusion of infinity and a better world show a crack of the finite. And sadly, that day was one of those moments. Joe didn’t come down on too many more road trips after that.


My wife and I were on vacation a few weeks ago. It was an on-our-feet kinda thing, which made me briefly depressed because those usually wear me out. Amanda, the intelligent one in our relationship, mused that we always have a tough and busy time the first time we visit a city, then if we come back another time we relax way better the second time around. She noted that we make all these immaculate plans of all these things we ABSOLUTELY HAVE TO DO, then we get there, some bits are awesome, some aren’t, and almost always the best parts are the parts we didn’t plan.


I thought on what she said a while, and firmly decided while on vacation that when we got back to real life, I would try and fit all of my “sea of otherwise” bullshit plans into two days a week and live the rest of life unplanned.

But, 2014 has been a motherfucker.

2014 started, for me, with a big sigh. A sigh of relief to again be employed and for once telling myself not to expect anything, or take any shit for prolonged periods of time – FOR REAL this time. For REALLY REAL.

I suppose that was one net benefit of the ‘wandering years’ – I learned that I’m pretty good in pressure cookers – I can get along just fine with all types of people and in many types of situations – certainly many more situations that I would have thought 4 years ago. The trick is, I can only stick in a situation I’m not comfortable for so long. Usually that “so long” time table is the time table that satisfies this bizarrely foolish “do the right thing, don’t screw anyone over” sense of duty and pride I occasionally harbor.

But, yeah, at the beginning of 2014, I was so happy to just be employed – heads down, coding, and bonus!: not hating it.

I told myself I’d take a break for a couple months from projects, and I’d delay other plans too – other than the absolutely necessary. I didn’t plan it (ha!), but I was trying a different approach to happiness. I decided for 2014 to actually work out regularly, and do some pretty boring “sea of otherwise” adult things like fix up the house a little, help siblings with wedding plans, and so on.

A few months turned into 6 months without projects (such as blogging here). No epiphanies, no “wow this is worth writing about”, frankly – just the grind.

In my 6 months of “no projects” I’ve found that projects aren’t the problem I was having with life satisfaction…

As I’ve mentioned before. Joe was a photographer. I am too, somewhat.

The weird thing is, like his war story, I don’t remember a single photo that Joe shot. What I do remember is that he always had his camera. I remember that if you stuck your tongue out in a photo or made a funny face, he would tell you once to stop, and promise you, with fair warning, that if you made the face in the photo he would make an 8×10 print of the photo. Then, he’d take the shot.

Only one of our cousins ever had the guts to cross Joe. One family reunion she stuck her tongue out, and, like clockwork, at the next family reunion my grandfather gifted her a framed 8×10.

Screen Shot 2014-06-15 at 6.58.44 AM

Joe was a man of his word, with a somewhat bizarre and perhaps foolish sense of duty and pride in his promises. No matter what, a toy store trip was going to happen, even when he was not 100% when we visited in Colorado – when I was what? 22 years old?!

And, of course, 8x10s of funny faces happened too – at least once.

It’s odd though, that I don’t remember even how that photo of the one rebellious cousin photo looked.

Also odd, that I don’t really remember or care for much of his career story. My grandfather the war veteran – not once did I care to hear his war stories or figure it all out, because Joe was an otherwise interesting and friendly person. To us, his grandchildren, he was bigger than career – he was this quirky happy guy who knew how to take it easy, responsibly, with plans.

Joe knew to plan some time for himself with solitaire, and some time for the boys to go get toys, and of course hair appointments for grandmother’s immaculate hair – but otherwise he just was – he was just there, without a care in the world.

My father has told me, numerous times, that the Joe we knew, is not the Joe he knew. My father knew a different man entirely.

When Joe was 16, with two younger sisters, his father left. My grandfather became an adult at 16 – working jobs in the depression era to help his mom keep the family afloat. I don’t really give a shit to know much about my asshole great grandfather, but the little I know is that basically he went off with another woman and clearly had a differing opinion than Joe about what being an adult or responsible meant.

The Joe my father knew was an accomplished man, working a military job, with 4 kids. Too busy, often, for kids.

I bet my dad knows a whole lot about my grandfathers career exploits.

EVERYTHING about quitting my corporate job a few years back was about career exploits.

My wife and I are on the DINK (dual income, no kids) / cool-aunt-cool-uncle track – our siblings want kids, desperately, and we’ll be happy to spoil nieces and nephews on the weekend, looking forward to it even – but – we like sleep, and sugar cereal, among other things, so kids just aren’t in the plans.


You might argue that you contribute to society by having some brats and screwing them up less than everyone else, or you contribute with career. Naturally, at 28 years old, on my way out to the ‘wilderness’ of whatever job may come, I was sure that my contribution to the world would be career.


So I contributed. Then I had more than enough personal success for a life time, achieving goals beyond my modest dreams very rapidly. Funny thing, personal success often does not equal lots of money, so, slowly, painfully, the reality set in that income pays the bills and dreams do not.

And, not so funny a thing, strangely, cool-party-story personal success feels rather hollow actually. A million lessons learned on that path and I’d heartily recommend it to anyone with the stomach to believe in themselves for a while. But what do you do when you come back down to earth and realize you’re still most likely going to be 9 to 5 for a long long while?


You get really fed up with predatory fuck-you ego-filled startup cultures, that’s what happens when you realize you might have to work with those assholes a while longer.


Another thing happened in a round about way at the end of the four year wilderness trip, the cool-party-story stopped making any money worth mentioning, and so it was only cool in a cool-party-story set-for-life-resume-line-item kinda way. Being an introvert who’s decidedly not cool, the cool-party-story aspect wore out fast and I came around to a realization that theres more to life than whatever.

Screen Shot 2014-06-15 at 7.49.06 AM

There’s more to life than career, there’s more to life than kids, there’s more to life than xyz.


Every time Joe would visit, he’d have a package of 4x6s for everyone in the family. We and our uncles and aunts have drawers filled with them. Our parents would print a couple rolls of film a year and Joe would come with four rolls worth printed for every trip – there I was, with my nintendo, six months previous, wearing bright neon mc hammer pants, what was I thinking.

Recently I caught myself printing photos and giving them to relatives. I’ve become the guy in the group who can fiddle enough to make shitty photos look serviceable.


I give these photos to my wife’s family and they look at me funny at times – printed photos in 2014? To which I respond usually, fuck yes photos in 2014. Because, why not?!

I’ve been doing this handing photos thing out absent mindedly – it’s just a natural instinctive thing to do, I thought nothing of it.

Then my brother bought a house.

The thing about my brother buying a house is this: He was also working a full time job, as was his fiance. And, hes in a two or three year night-school MBA program, and he’s getting married in July with a huge multi-hundred person wedding. In the middle of that six month death march he and his fiance decided to go looking for a house and bought one, for the hell of it.


Overachiever of the year, 2014, Jon Baker.

It all came together when I walked into his house. Jon was immediately too busy to take a minute to give me a tour (plans!), he had ten thousand chores to attend to, and his much more easy going wife-to-be was happy to show me around. She showed me this room and that, then I see the front room of the house – a couch, a table, and two 20″ tall china dolls in kimonos, from korea, or japan. Joe’s.

I’m not as clever as I’d like to write – I’d love to say it all came crashing down in a big OH MY GOD moment right there and then, but it didn’t. It came together much slower than that, at 4am, a couple hours ago, now some three or so weeks later.

For the next hour or so I went through the obvious slideshow you’d expect. Jon’s fiance and I pet their adorable dog and talked about fun things, while Jonny did chores non-stop. At the time I thought he looked just like Dad. Now, a few weeks later, I realize he also looks just like Joe.

(one of these is my brother..)

(and, just to be fair, here’s me and my stash of stupid things..)

There’s good and bad in Jonny looking like Joe. On the one hand he plans epic toy-store for ten-year olds (or 22 year olds, lets be honest..) type proposals, and he’s extremely responsible and attentive – on the other hand, eventually he’ll be 32 like me, and worn the fuck out from being “on” all the time. Eventually he’ll realize, hopefully sooner than I did that working out and eating right isn’t just about vanity – like it or not, sugar cereal for dinner equals supremely grumpy Jason the next day – it’s just science.


We started the year off just holding our breath – my wife’s brother was getting married, Jon’s getting married, we needed to buy a car – enough plans for 2014, done and done. SOO many family visits and such and such for weeks before and after weddings, and as introverts we (my wife and I) honestly plan, and crave, often, to have “don’t talk to me, don’t talk to anyone” days together.


So far we’ve had very very limited success – perhaps 3 full weekends of just her and I doing absolutely nothing – out of, what, 26 or so thus far? So much for being a good planner.

I’ve found that, even without hobbies, I always find something to fill my time with plans. It’s in the blood.


Like my brothers, and my father, and my aunts, and my uncles, and my cousins, I’m a complete failure at taking it easy and not making plans. It’s a sad story really. My asshole great grandfather essentially decided he would rather eat sugar cereal for dinner for life rather than be a responsible adult for his children. Because of that one moment, my great grandfathers poor decision, some 20 or 30 people down the family tree have a somewhat crippling fascination with plans.

Our plans give us this delusional self-satisfying security blanket that we feel we’re in control and know what’s going to happen. No asshole like our great grandfather is ever gonna get the best of us, we have spreadsheets motherfucker!


The flipside to spreadsheets and plans is that we’re terrible at having fun – we find it impossible to cut loose. It’s in the blood. White guy can’t dance, news at 11.


This is why, in a roundabout way, when I’m having sugar cereal for dinner, it’s a little bit of a fuck you to my great grandfather. Fuck that guy. I’m gonna eat sugar cereal AND watch my brothers’ kids when they need a break, all while feeling a bizarrely foolish feeling of pride in keeping my promise. Just like Joe.




Four years ago I wanted nothing more than to find happiness, and I put a good fighting effort into planning it. I was working contract and making semi-successful mobile apps on the side with friends, then I was working startup, then I was working mobile startup. All of these things added new facets to my career and experience, some that looked great on resume, and others that served as lessons in what and who I am not and cannot be. Like on our vacation, the gems in the pile of otherwise were unplanned.

When I accepted my current job – I did not plan to be there for 6 months, we had a 6 week trial agreement. Having been severely burned this way or that two years in a row previously I was not in a mood to have any hopes at all – and you know how it is, when you let yourself just be, you see the brighter side of things. Here I am, six months into a 6 week trial that I’m hoping will last 3, 5, or more years – though I’m trying to just make it through one year first, plans are for suckers 🙂

My buddy emailed me a few weeks back “hey, where the hell have you been? you must have some sexy app you’re working on, or some other such awesome thing going on.” No. Not nearly so sexy, but entirely better – I’ve been missing less moments doing nothing with my wife, my dog, our families. I’ve been paying fucking attention (in as much as a self-centered stubborn asshole with a million plans ever can.), and finding myself so grateful for my current working situation, our awesome family, our friends, and my awesome wife.

I had my career story, I’m satisfied – I understand what a bubble is now, and how it works. You’re probably a stubborn asshole like me, so this is pointless, but here goes: the party story’s fun for a few minutes, but not worth the long hours of effort in the long-run. Not enough to convince you? Alternative idea: watch cosmos, get over yourself and learn how precious and miraculous it is that you’re alive and can love and be loved.

I realized recently that I want to be like my grandfather, known for his zany promises and brisket, rather than like my father’s father, known for his career and hard-work.

Stop me if you’ve heard this one before: Man quits job to ‘discover himself’, with full-on anxiety, fear, and immaculate plans. Wife hugs him and lets him be. Man stubbornly frustrates himself for four years in the name of science. Later, exhausted, man gives up, and quickly discovers life is what happens when you’re making other plans. Wife muses to herself, “fucking finally.”


Music: Acoustic tracks from Matthew Good’s In A Coma (Deluxe Edition, of course!)
None of the funny photos are my own. I found them on tumblr and shared them on my tumblr blog.

The Objective Sea

Developers love to make lists. We’re not always great at organizing our lists or sharing them with the world, but boy do we love making lists.

It seems like I learn about a great new library, or trick, or tool from a peer developer, or hacker news every few days. Earlier this year I started writing a personal list of these resources in a spreadsheet, and after a few days there were over 250 items in my secret little spreadsheet.

I discussed this list-making with a few of my fellow developers and we agreed it would be awesome to combine our lists and make something like nshipster and one thing well blended together.

If nshipster and one thing well had a baby, it would be our new blog, The Objective Sea.

The Objective Sea features iOS development resources and tips aggregated from fellow developers, designers, and myself.

Topics covered include libraries, tools, web services, websites, low-cost design assets, career resources, osx and xcode tricks, and regular-old “wish i had known that before!” iOS SDK trivia. The site’s not just for iOS developers, there are or will be plenty of bash/unix and web application/web services related topics covered as well.

Example posts:

Some topics posted are well-known within the iOS development community, but there’s almost certainly something new for everyone to learn about. Three posts are published per week, so feel free to check back from time to time.

If you’d like to contribute to our master-list of awesome things, or write for The Objective Sea, contact me. We’re happy to add your name and a little bio (that you write) to our list of contributors, or reference your submitted material as anonymously contributed if you prefer.