Web

Up and Running with Clojure

For the last three years or so, Clojure has been a language that I admired from afar: the design of the language is wonderful but I’ve never really used it to build anything and haven’t looked closely at the language … Continue reading

Posted in Web | 16 Comments

A Modern Guide to Threads

I spoke recently at Rubyconf 2011 on some advanced topics in threading. What surprised me was how little experience people had with threads so I decided to write this post to give people a little more background on threads. Matz … Continue reading

Posted in Web | 11 Comments

Destructuring Assignment in CoffeeScript

CoffeeScript supports a subset of pattern matching called destructuring assignment. Destructuring assignment uses patterns to extract out the parts of an object during assignment. It’s a simple and elegant technique but when overused can have unintended consequences on a codebase. … Continue reading

Posted in Web | 13 Comments

Automating Node.js deployment to EC2 with Chef

This post is a follow up to my colleague Ben’s excellent post from three weeks ago describing how he got node.js up and running on Amazon EC2. He asked me if I could automate his deploy in order to help … Continue reading

Posted in Ops, Web | Tagged , , | 10 Comments

Improving Resque’s memory efficiency

Resque is a very popular message queueing system for Rails applications.  Here’s how I recently improved the memory efficiency of a Carbon Five customer’s resque processing farm by 68x! The Problem This customer has an existing investment in Resque and … Continue reading

Posted in Web | 8 Comments

Behavior Driven Development for node.js

On Tuesday night, the San Francisco Server Side JavaScripters had an excellent meetup hosted by the folks at CBS Interactive. I gave a short talk on using zombie.js with jasmine-node to test drive your node.js application under automation. Here is … Continue reading

Posted in Process, Web | Tagged , , , , , | 1 Comment

Valium extracts Model attributes without instantiating ActiveRecord objects

I was recently on a project that captures and logs data as ActiveRecord models.  Each datum had 10 or so numeric attributes.  One story required pulling out all the values for a particular attribute in a time range (i.e. all … Continue reading

Posted in Web | Tagged , , | 2 Comments

A Look at Test Generation in Cucumber and ScalaCheck

In a typical agile project the test suite grows roughly twice as fast as the non-test code. As developers, our goal should be the minimum amount of test code that specifies the behavior of the app. This often leads to … Continue reading

Posted in Web | 2 Comments

Deploying node.js on Amazon EC2

After nearly a month of beating my head against the wall that is hosted node.js stacks — with their fake beta invites and non-existent support — I decided it was time to take matters into my own hands. Amazon Web … Continue reading

Posted in Ops, Web | Tagged , , , , , | 30 Comments

Pragmatic JavaScript Testing with Jasmine

As more and more parts of our applications are written in JavaScript, its important to have them covered with automated tests. Fortunately, there are numerous JavaScript testing tools available. As a BDD fan, the RSpec inspired Jasmine is currently my … Continue reading

Posted in Process, Web | 21 Comments