Game design, game programming and more

Building Linux virtual machines on Windows

TL;DR: Want to build Linux virtual machines to run on your Windows computer? Check out linux-vm, which contains everything you'll need. Edit: The original scripts ("build-linux-vm") no longer work. I've rewritten the project and created a new GitHub … [Continue reading]

Reducing perceived latency

Instagram shows how uploading earlier in the photo-upload process increases UI responsiveness

Before Instagram was a billion dollar company, Mike Krieger posted a presentation called Secrets to Lightning Fast Mobile Design about how his team made the Instagram photo-sharing application feel so responsive, which is one of the key reasons their … [Continue reading]

Choosing a game network library

Since I’ve been developing online games since 1991, many folks have asked me to recommend a 3rd-party network library for their game project. Unfortunately, I can’t! At least I can’t recommend one from personal experience because the projects I’ve … [Continue reading]

Writing Server and Network Code for Your Online Game

I spoke this year at the Game Developers Conference (GDC 2012) on "Writing Server and Network Code for Your Online Game". Since I tend to talk quickly, to say the least, I thought it only fair to post my presentation slides for those who attended but … [Continue reading]

Installing firewall exception rules programmatically

Writing installers for applications requires a substantial effort, even when using tools like InstallShield. My challenge for today was to write as little code as possible (because I'm lazy) to configure Windows Firewall exception rules so that the … [Continue reading]