From the monthly archives:

August 2011


Thoughts on what make good acceptance tests:

  • Don’t write brittle tests
  • Communication between the coder and customer
  • Not being low level
  • Keep them at the same level of abstraction

Thoughts on Cucumber:

  • Jorge likes Cucumber’s Given-When-Then
  • Cucumber’s plain english definitions are extra overhead when your customer isn’t going to read your
  • english definitions.
  • Evan likes Cucumber for:
    • Popping the why stack
    • Given When Then And
  • Evan doesn’t like:
    • It’s an external DSL
    • Boundary between the test language and the code
    • Has loose coupling between step definitions

We need our acceptance tests to run fast too.

How do you test your javascript?

  • Selenium tests on the critical parts
  • Ignore the javascript and test the ajax requests.
  • capybara-webkit

parallel_tests gem


Marty is the organizer of the Boulder Ruby Users’ Group and Rocky Mountain Ruby Conference. He’s been programming Ruby since 2005.

Charley has been programming Ruby for about 6 or 7 years and doing IT for about 15 years. He got involved with Watir, which led him to Ruby.

The Rocky Mountain Ruby Conference is held in Boulder and includes several hikes and other activities not normally included in a conferences. I’ll also be speaking at the conference.

We went over the differences between the “Boulder Area” and the “Denver Area”. They’re 15-30 minutes apart, but culturally they’re pretty diverse. Boulder is small, but is becoming a startup and technology hub.

Both Marty and Charley have been talking about the food experience in Boulder and they’re setting up the conference to be a great food experience as well.

I asked if Marty and Charley view the community and regional conferences has changed after organizing a conference. Marty actually helped with Mountain West Ruby Conference. He also went into some of the challenges of picking a date and arranging the conference. He came up with the conference to get local people involved.

They also went into how they work around repeated talks and whether or not they want them. Repeaters are OK, but you want a unique program and conference.

We also discussed how talks are picked. How much weight the topics, speakers, and explanations get.

The discussion finally turned to the venue, which is the historic Boulder Theater. It sounds like a terrific way to run a conference with some of the options they have with setting up the experience. Much different from the hotel based conferences.


Igor started developing in Nginx in 2002. He started building it because he needed something that would effectively proxy connections in an event driven manner. The other webservers at the time could only handle static content and didn’t scale well.

Initially, Nginx was used to proxy Apache webserver.

Igor was never really fond of fastcgi. It took him 1 to 1 and a half years to add it to Nginx after it’s public release. He explains his opinion on fastcgi.

Igor also tells us the primary differences between Apache and Nginx and explains the tradeoffs between the two models.

We also dug into what is coming up in the next releases of Nginx and how things will move ahead now that they have formed a company around Nginx.

If you would like to donate to Nginx, go to
You can also get on the mailing lists for Nginx at
Finally, follow Nginx on twitter at @nginxorg

{ 1 comment }

I’m working on another Cassandra demo, but didn’t have time to finish, so I decided to show you Ruby Koans. It’s a very interesting test-driven approach to learning Ruby. I hope you enjoy it.

Download 52.5 MB
Download (iPod & iPhone) 31.1 MB
Take the 2011 Readers Survey

{ 1 comment }

In this episode we discussed: