Goodbye SF

Its nearly 2 am and I'm sitting up alone in some airbnb apartment in a shitty neighbourhood in SF. Work paid for a week long trip here - full of meetings that I'm mostly running, planning out a bunch of software I've been wanting to write for years. And will…

Bug hunting with American Fuzzy Lop

I read about American Fuzzy Lop (AFL) the other day, and wanted to try it. For the non-technical, fuzzers are testing tools for finding obscure bugs. They work by effectively sitting a million monkeys at keyboards pressing buttons in your program, to see if it crashes or hangs. AFL is…

A cleaner way to design an IDE

In part 1 I talked about how modern IDEs look like this: There are some serious problems with this model: The code needs to be parsed in several places. When the code changes, the binaries need to be recompiled. Triggering this recompilation requires either: Manual recompilation (at the worst possible…

The Unix way in an IDE, Part 1

I love the unix philosophy. I want everything I make to be a lot of small tools which compose together to form programs more powerful than any piece on its own. Shell scripting is the epitome of this. Its a form of programming in a sense - every script does…

Gangnam Stats

At time of writing, Gangnam style has 2,082,054,675 views. About 2 billion, for a 4 minute long video. That seems really big, but I can't really understand that number. In total, 4 minutes * 2 billion is 133 million hours or 15,220 years. If people live about…

In defense of sillyness

A few weeks ago I was reading some XKCD comic about ninja turtles: I won't embed the comic itself the content isn't terribly important - he presented some wikipedia pages which could be sung to the tune of the teenage mutant ninja turtles theme song. Ok, cute. Sure.. But it…