Author Archives

Versioning REST Web Services (Tricks and Tips)

In my previous post on this subject I described an approach to versioning the API of a REST/HTTP web service. This approach has significant advantages over the approach that is currently most common (i.e. embedding a version token in the URL). However, it does have some downsides. This post is an attempt to outline those and […]

Versioning REST Web Services

Managing changes to APIs is hard. That is no surprise to anyone who has ever maintained an API of any sort. Web services, being a special case of API, are susceptible to many of the difficulties around versioning as other types of APIs. For HTTP based REST style web services the combination of resources and content […]

What’s Average?

Today I said to Elliot, “on average …” (What I was talking about is not very interesting. Trust me.) Of course, Elliot immediately asked what average is. It turns out that describing average to a four year old is really hard. My first inclination was to describe the function that is used to calculate the arithmetic mean of […]

SystemShepherd 5.0

There is big news from the work front, SystemShepherd 5.0 has been released. This is what I work on day-to-day and it is great to see it finally officially released. SystemShepherd is a seriously cool bit of software designed to help you manage your software-as-a-service offering more effectively. If you have a system that you need to manage […]

Power to the Tech Fringe

Today I was working at my local coffee shop1. I notice a guy near me with a large “Python Powered” sticker on his laptop. I wandered over, said “hi” and asked if he got to use Python daily basis. He replied, “Yes. I have my own company so I get to use what ever technology I like.” […]

mod_proxy_balancer Is A Two Timing Hussy

The canonical way to deploy a Rails application is using Apache and mod_proxy_balancer to act as a reverse proxy request to a cluster of Mongrel processes running your application. It is easy to setup, debug and monitor. As it turns out the only problem with this setup is mod_proxy_balancer. To see what I mean lets start with what Google […]

RSpec Emacs Mode

I just released a small Emacs minor mode, rspec-mode that provides some convenience functions related to dealing with RSpec. So far this minor mode provides some enhancements to ruby-mode in the contexts of RSpec specifications. Namely, it provides the following capabilities: toggle back and forth between a spec and it’s target (bound to \C-c so) verify the spec file associated with the […]

Fun With Public Keys

I just spent a long time diagnosing an RSA public key exchange problem. Google was of very little help so hopefully this article will get picked up save someone else the trouble in the future. The problem is this an RSA public key PEM or DER generated by Ruby’s OpenSSL::PKey::RSA are unreadable by OpenSSL, Bouncy Castle and probably other crypto […]

Colorado BrainJam Is This Friday

For any tech people in the Denver/Boulder area I wanted to point out that there is a BrainJam unconference happening this Friday (April 11th). Looks like a lot very interesting people have signed up so far, and I will be attending, so I have high expectations. If you are able to join us find me and […]

MountainWest RubyConf

I am going to be at MountainWest RubyConf tomorrow and Saturday. I looking forward to meeting and hanging out with lots of interesting peoples in the Ruby community. Oh, and the schedule looks very interesting.