Light Hoodie

A few weeks ago Hoop Somuah and I decided that since the Seahawks were going to the Super Bowl we needed proper attire, so we decided to show our 12th man pride by creating custom Light Hoodies. We ordered NeoPixel Strands, a Trinket Arduino board, a capacitor, and a battery pack from Adafruit, and set out to…More

Node Summit 2013 Retrospective

This year I attended Node Summit 2013 from December 3rd-4th in San Francsico.  I went to support Michael Shim, an HBO coworker who was speaking on a panel about Node.js in the Digital Media Universe, and to get a crash course into the culture, tech, and community surrounding this framework.  Being brand new to Node.js…More

A WebSocket Primer

Over the past year, prior to leaving 343, I spent a large amount of time working with the WebSockets protocol and upgrading the Halo Services to support it.  In order to solidify my knowledge and provide a handy refresher for when this information invariably gets context switched out of my brain in the future, I…More

A New Adventure

My last day at Microsoft and 343 Industries was two weeks ago.  I left to take a new job at the recently opened HBO Codelabs to work on HBO Go.  After 5 awesome years at Microsoft it was not an easy decision to leave, but personally I was ready for a change, and was incredibly…More

Enforcing Idempotency at the Data Layer

Idempotency In Computer Science idempotent operations are defined as operations that produce the same result if they are executed once or multiple times. Practically in an application or service this means that idempotent operations can be retried or replayed without the fear of processing the data multiple times or causing unwanted side effects.  As a…More

Creating Immutable Data Stores

Immutability Immutability is the property of data to not change once it is created.  Most storage systems provide basic C.R.U.D. (Create, Read, Update, Delete) functionality.  However, to have truly Immutable data we should only use the Create and Read functionality provided by storage systems. Nathan Marz makes an excellent case for why we need Immutable…More

Halo Pride

Pride Weekend in Seattle is always a good time, the city especially Capitol Hill is decked out in rainbows, and the Pride parade is always a spectacle to be seen. This year the Warthog made a special appearance in the Pride Parade.  A bunch of 343ers, including myself, marched along to show support, along with…More

Distributing Text Templates via Nuget

A few months ago I began to look into how to distribute T4 Text Templates via Nuget to do Code Generation.  Creating a Nuget package including T4 files is easy to do, just include them as content files.  Content files in Nuget Packages are copied into the root of your application when the package is…More

Patterns & Best Practices For Moving From RDBMS to Azure Storage

I recently presented at DotNetConf 2013 on how to make the paradigm shift from the relational data world like SQL to the non-relational world of Azure Storage.  I had a lot of fun giving the talk.  This was my first public technical speaking event, so any constructive feedback is very welcome! In the talk I…More

Origin Story: Becoming a Game Developer

Over the past few weeks I have been asked over a dozen times how I got into the Games Industry, so I thought I would write it down. TLDR; My first Console was a SNES.  I learned to program in High School. I attended Cornell University and got a B.S. in Computer Science.  My first…More