27. March 2016

Relevance Graphing

Last month a workmate and I flew down to San Francisco to go to elasticon.

I attended an interesting talk given two employees of Giant Oak. Giant Oak does contracting for government agencies to try to solve social problems. I am not sure if this is their motto but one of the speakers say that they “see the people behind the data,” which sounds really cool.


02. February 2016

Fun with `fork`

In irb,


Now typing exit will not work because your keystrokes might go to either the parent process or the forked child process. I found it to be impossible to get the characters exit to coherently all go to the same process.

01. February 2016

Getting a sum of durations in rails

For my “I had trouble finding this on google” series, here’s a solution I found to getting a total duration from a collection of objects with durations stored as Time objects.

total_duration = durations.reduce(Time.gm(2000)) do |total, time|
  total += time.to_i

There are two little tricks happening here. The first is that durations are stored as a time of day on January 1st, 2000, so we use that as the reduce seed. The second thing is that the Time class defines addition for integer objects, but not for other times, so you have to convert your duration to an integer first.

No rocket science here, but a couple little quirks that made it a little harder to add two times together than I expected.

23. January 2016

Brainfuck Interpreter

Every programmer has some level of interest in knowing how to write a language. I’ve always wanted to tinker with this level of software development, but even after years of development experience you never really get exposed to this stuff because what’s already there generally just works. On top of that, it’s a somewhat complex process involving several steps with intimidating terminology.


28. November 2015


My old “attach a camera to your RC car” tutorial has been republished into a “1-2-3 Projects” anthology by maker media.