Nerderati You're probably not nerdy enough.

Installing Matplotlib, NumPy, SciPy, NLTK, and Pandas on OS X Without Going Crazy

1950 words — written on September 3rd, 2014.

I don't know exactly why, but installing science/math/statistics oriented Python packages on OS X has historically been a complete pain in the ass. It seems as though things have improved over the past few years with the development of custom disk images, meta-package installers and other fanciful things, but most of these solutions sacrifice the ability to upgrade the given packages or link against custom builds of supporting libraries due to overly aggressive sandboxing to ensure that things Just Work™.

Let's see how we can install matplotlib, NumPy, SciPy, NLTK and Pandas on OS X Mavericks, which collectively make up a large portion of the scientific computing ecosystem in Python, without losing our minds tracking down dependency problems and compile-time errors.

Bartering for Beers with Approximate Subset Sums

2301 words — written on August 19th, 2014.

My favourite days are the ones where I get to solve a seemingly difficult everyday problem with mathematics. A few weeks ago, my friend Andrei came to me via IRC with a question about how to effectively generate groups of beers from his cellar to trade with others.

Simplify Your Life With an SSH Config File

929 words — written on March 17th, 2011.

If you're anything like me, you probably log in and out of a half dozen remote servers (or these days, local virtual machines) on a daily basis. And if you're even more like me, you have trouble remembering all of the various usernames, remote addresses and command line options for things like specifying a non-standard connection port or forwarding local ports to the remote machine.

Ideas of March

190 words — written on March 15th, 2011.

Four years ago when I started using a micro-blogging service, I revelled in the sheer simplicity and low barrier to communicating my thoughts. Blogging, in that era, seemed like a historical vestige on the verge of being consumed and overtaken by the rapid fire, real-time tweets of my peers. I jumped on that bandwagon, and never looked back. Until now.

Code Your Art Out

256 words — written on March 11th, 2011.

Ever since I had the pleasure of keynoting at Make Web Not War: For The Web in 2010, I've been eagerly awaiting the announcement of the 2011 edition, which was announced just a few days ago.

Perpetual IRC - The Proxy Edition

1761 words — written on November 29th, 2010.

Last time, we looked at how one could maintain a persistent session in IRC through the use of a terminal multiplexer (such as screen or tmux) and SSH. While this has the advantage of being very easy to setup, there are a few very obvious disadvantages and trade-offs:

Perpetual IRC - The Multiplexer Edition

710 words — written on September 7th, 2010.

One of the major advantages that IRC has over your ‘traditional’ instant messenger clients is that, with a minimum amount of effort and hardware, you can create a setup that will remain perpetually* connected, even when you're not online.

Making Git Behave

991 words — written on July 31st, 2010.

It's no secret that I'm a big fan of git, and of distributed version control in general; they offer a compelling toolset and degree of flexibility that you would be hard pressed to find in a “traditional” centralized version control system.

Compiling Vim With Ruby Integration On Snow Leopard

794 words — written on July 26th, 2010.

Sadly, the default installation of Vim on Snow Leopard does not have support for the ruby interpreter compiled in, which is a pre-requisite for using the plugin. Luckily, that's easy enough to remedy, and in the process we'll learn a thing or two about compiling your own custom Vim binary.


151 words — written on May 20th, 2010.

I'm quite happy to announce that I will be giving the keynote address at this year's WebNotWar/For The Web conference, taking place on May 27th, 2010.

Suggested Reading

103 words — written on May 4th, 2010.

Some books that I think every self-respecting nerd should read.

The Wonders and Simplicity of Redis Sets

297 words — written on February 26th, 2010.

If you were to apply a bijective function to each letter in each word of a language (e.g. English), how many pre-existing words would you obtain in the resulting image?


88 words — written on January 31st, 2010.

An explanation of the shebang[1], and what it means when included in a script. Sometimes, you learn things about tools you use every day.

Redis Memory Monitoring - Python Edition

131 words — written on January 4th, 2010.

I've been experimenting with a Python+Redis combination (with redis-py) for data analysis on a few side projects lately, and a simple script like this can come in handy when you want to make sure you're not doing something completely stupid with Redis that gobbles up all of the allocated memory. And yes, I've been guilty of doing that on a few occasions.

ConFoo You Too

211 words — written on December 15th, 2009.

While a bit late, I'm extremely happy to announce that I have been selected as a speaker for the Conference to be held in Montréal at the beginning of March, 2010.

The PHP 5.3 Y-Combinator

136 words — written on November 27th, 2009.

One trick that seems to be all the rage these days is to show off fancy results from functional languages in their imperative counterparts.

Hacking Hotel Wifi With an SQL Injection

653 words — written on August 6th, 2009.

After attending & speaking at CakeFest 2008 in Berlin, Germany, I decided to take a week off and explore the city. Since the hotel that I had been lodged in for the conference had free Wifi, I assumed that this was the norm in mid-range to high-end hotels in and around Berlin. And, as you may have noticed from the title of this post, it seems as if I was mistaken.