Writing on life, business, art & other random topics.

All of my long-form thoughts on tech, leadership, product design, and more, collected in chronological order.

Ruby Blocks as Dynamic Callbacks

Callbacks are a great technique for achieving simplicity and flexibility. Simply put, a callback is a block of code passed as an argument to a method. In Ruby, code blocks are everywhere and Ruby makes it trivial to pass a block of code to methods.

Nyan Cat RSpec Formatter

I watch a lot of tests run in a given day. So I figured why not make it more fun. Inspired by minitest’s pride, and um cats? I came up with a Nyan Cat inspired RSpec formatter. Update: After last week’s launch, Nyan Cat received a great response from the Ruby world. Over the weekend, I released version 0.0.2.

Gaga, A Git-Backed Key/Value Store

Gaga originated from my winning entry in Codebrawl’s Key/Value Store contest. The challenge was to write the best key/value storage backend you can think of. Since Git is fast, reliable, and a great tool for storing source code, I was really interested in making an easy way to store key/values.

Print Stamps With Ruby!

I’ve just released Stamps - A Ruby gem for creating postage labels, calculate the shipping cost of packages, standardize domestic addresses via USPS CASS certified Address Matching Software, and track shipments using the Stamps.com Web Services API.

Easy Multiple Account Management for Heroku

Recently, I migrated all of my personal and business sites to Heroku. Heroku, as you may know, is a fantastic service for hosting ruby applications. Oh, and it’s free! Like a lot of folks, I keep work and personal items such as email, bank accounts, github, etc in separate accounts.

5 Ruby Gems for Concise Code

At Littlelines, we have to write a lot of code under strict time constraints. We work in small teams which means that writing clean and concise code is a necessity. When a Ruby library comes along that makes code easier to grasp in a hurry, test, and maintain - we use it. Here are some gems we have in our toolbox:

20 Clojure Links To Get You Up To Speed

Writing multi-threaded code is hard. If you’ve ever done concurrent programming, you’ll probably agree. Clojure offers a compelling alternative to traditional object-oriented approaches to programming and has garnered much attention from the Ruby community because of it’s elegant design that lets you get right to the essence of a problem.

Git blogging with Aerial

Over the last few years, I have grown tired of maintaining, migrating, and upgrading blog software, so I’ve decided to roll my own with Ruby code. In doing so, I wanted to keep things as simple as possible with a basic set of features: articles, pages, comments, rss, etc. What I didn’t want is a SQL database or an administration tool. I wanted to write articles in my text editor of choice (Emacs), in Markdown format, and versioned with Git.

RubyConf 2008 Wrap Up

This month I headed down to Orlando, Florida for RubyConf 2008. It kicked off with a delightful (and touching) keynote by Matz. He walked through his own programming history with languages including the language he got started with BASIC (the same language I started with). Matz talked about the growing community and a statistic from Gartner that says there are over a million Ruby developers and will grow to 4 million by 2012, which is amazing.

Two+ Years Working with Rails

Update: I thought I should give a little background on how I got started with Rails - when I was attending the SDWest conference in March 2006. I was at the Jolt Awards, and saw @d2h receive the award for the best web development tool for Rails 1.0. I downloaded Rails that night in the hotel room and was hooked.