Articles

  1. Notes on "Y Not"

    My notes on the talk “Y Not – Adventures in Functional Programming”, given by Jim Weirich at Ruby Conf 2012: One of the deepest mysteries in the functional programming world is the Y combinator. Many have heard of it, but few have mastered its mysteries. Although fairly useless in real-world software, understanding how the Y combinator works and why it is important gives the student an important insight into the nature of functional programming.

  2. Provision Azure Boxes With Vagrant

    Look, man, I’ve got certain information, all right? Certain things have come to light. And, you know, has it ever occurred to you, that, instead of, uh, you know, running around, uh, uh, provisioning Azure boxes through the web client, you could be using your command-line? I mean, uh… Hasn’t that ever occurred to you, man? (If you’d rather not read all this text, and want to check out the example directly, head to unindented/provision-azure-boxes-with-vagrant.)

  3. Provision Tor Relays With Ansible

    You’ve already seen how to Run A Tor Relay On Ubuntu Trusty. It’s a task that, while straightforward, still requires you to follow a ton of steps to have everything up and running correctly. If you only have one relay to set up, executing things by hand is fine. The moment you have more than one, it becomes too tedious. I’ve looked at configuration management tools like Chef and Puppet in the past, but their learning curve was pretty steep and I just didn’t have the patience.

  4. Run A Tor Relay On Ubuntu Trusty

    If you’ve seen the Tor Challenge, you may be wondering how hard it really is to run a relay on one of your spare machines… It’s not hard at all! You can probably get up and running in less than half an hour. The following instructions detail how to set up a middle relay on a fresh Ubuntu 14.04 (Trusty), but should apply to most Ubuntu configurations. Also, the official documentation covers every topic you can possibly think of.

  5. Pixel Art Scaling Comparison Part II

    I’ve been playing with a few other scaling algorithms in the 2dimagefilter project. They produce even more impressive results than the previous batch… Part I showcased the Eagle, SuperEagle, SaI and SuperSaI algorithms. I will continue here with EPX/Scale, HQx, xBR and xBRZ.

  6. Pixel Art Scaling Comparison Part I

    I’ve been playing with a few scaling algorithms in the 2dimagefilter project. They produce quite impressive results when fed pixel art, and the fact that emulators are able to run them in real time is just mindboggling. Here I’ve chosen a bunch of images to showcase the Eagle, SuperEagle, SaI and SuperSaI algorithms. Part II continues with the EPX/Scale, HQx, xBR and xBRZ algorithms.