---
title: RubyConf 2007 Day 3
teaser: Our correspondent in the field writes in again.
tags: news,web
author: Eric Mill
published_on: 2007-11-05
---

As expected, Day 3 is a lot more low energy, with less adventure and more
audience members with headaches.  People are stumbling into the talks anyway,
and RubyConf wisely decided to jumpstart people's day with Dr. Nic.

> It was a complete prick of a thing to work with. Can you say that in this
> country? qpjjj&#8212;Dr. Nic Williams

## A For Australia

[Dr. Nic Williams](http://drnicwilliams.com) is presenting on Use Ruby to
Generate More Ruby - RubiGen is Everywhere, a general purpose generator
framework, so you can write generators for any app where it's really
appropriate, like Merb.  He's got lots of gunfire animations, A Team action
scene reconstructions, and plays the A Team theme proudly through several parts
of his talk.  He's trying to break people (and the Rails team) out of thinking
that generators are only Rails things, as well as demonstrate how easy it is to
write generators in the first place.  Dr. Nic is a great speaker, as usual, and
the audience is entertained.

> I love fun.
&#8212;Dr. Nic Williams

Dr. Nic is not the only speaker to have prepared a video, but he is the only one
to have placed it on YouTube days before the conference.  To my knowledge, he is
also the only speaker to figure 80's theme music prominently into his work.

<iframe title="RubiGen at RubyConf - Teaser - YouTube" width="420" height="315" src="https://www.youtube.com/embed/TB-hiJ8wMKM"
frameborder="0" allowfullscreen></iframe>

## First, Who All Here Is Named David

Dave Astels and David Chelimsky are introducing themselves to talk about
Behaviour Driven Development with [RSpec](http://rspec.rubyforge.org).  This
isn't going to be a fair treatment, because I feel really distant from the whole
thing.  Dave asks the audience who doesn't know what acceptance testing and user
stories are.  I know what a user story is, but I've never heard of acceptance
testing.  I'm one of only two people to raise my hand.

Now they're showing off a feature where you can take the plaintext output of an
RSpec user story run, and use a different class to parse it and run it as its
own user story.  It got spontaneous and strong applause, so obviously everyone
is getting something I'm not.  I'm resigning myself to feeling surly.  Not as
surly as Ryan Davis, apparently, who is standing up to ask a question, and
instead giving a 2 minute diatribe of how he doesnt get <abbr title="Behaviour
Driven Development">BDD</abbr>, without asking any actual question.  When asked
to come up with a question by the speakers, he ends up saying that his question
is really to the audience, as to whether he's alone or not.  He fails to rally a
massive rebellion against RSpec and BDD, and soon sits down.

> You're alone, but not in that way only.
&#8212;Chad Fowler, to Ryan Davis

## The Best Idea Of All RubyConf

Rich Kilmer preceding the next speaker to tell us about the new Ruby Central
Project Fund.  This is meant to fund a developer, full time, for a period of 1,
2, or 3 months, to work on a Ruby project.  [Ruby
Central](http://rubycentral.org) will soon be accepting proposals, and
publishing a document on their website as to what they're looking for in
proposals.  This is terrific!

![''](http://images.thoughtbot.com/ui/2007-11-5-bob_ross.jpg)

## Adhearsion

Jay Phillips has begun his talk on Next-Gen VoIP Development with Ruby and
Adhearsion.  His first several minutes is a major gush about how wonderful Rails
is, and how right it did everything, and how much of a huge improvement it was
across the board&#8212;and there's nothing wrong with that.  He's then moving
into a whirlwind tour of how atrociously, hellishly bad it is to work directly
with [Asterisk](https://www.asterisk.org), the world's leading open source
telephony engine.

[Adhearsion](http://adhearsion.com) is a framework to work with VoIP and
Asterisk, and it looks really cool.  You can use it to make and receive VoIP
calls, and it supports features like Caller ID spoofing, and ways of confusing
automated telemarketer robots.  Apparently he's also got Chad Fowler, Rich
Kilmer, and Marcel Molina working on it, which is amazing.

What I wouldn't have expected is that it opens up possibilities like using your
cell phone as a universal remote for your XBox, or your Roomba, and integration
with Jabber (e.g. GTalk) IM protocols.  I don't honestly understand **why** all
those things are possible using Adhearsion, but I'm assured that they are.  Jay
has invoked the image of Bob Ross to cement this assurance.

Apparently Adhearsion 0.8 is being released later today, so this is as good a
time as any to [check it out](http://rubyforge.org/projects/adhearsion/).

## Snow

Ben Scofield is here talking on Cleanliness is Next to Domain Specificity, and
is focusing his attention on the theory of linguistic relativity, specifically
[Sapir-Whorf's](https://en.wikipedia.org/wiki/Sapir-Whorf_hypothesis).  The idea
being that language affects the way you think (obviously), not just in _what_
you think, but the very _how_.  He uses RSpec as an example, saying how we're
wired to think of tests as something you do at the end of a process, and
specifications as something you create at the beginning.  By taking the test
process, molding it into a specification-like language, and then presenting
everything in terms of specs instead of tests, it's encouraging test-first
development right off the bat, without any discussion of RSpec's actual quality.

> People say there are 10 billion words for snow in the Eskimo language.
> Actually, there is no Eskimo language.
&#8212;Ben Scofield

He's bringing up [Kayak](https://kayak.com) on the screen, a site I'm a huge fan
of, and pointing out their Search <abbr title="Application Programming
Interface">API</abbr>, and the Kayak-provided sample of Ruby code(!) to use it.
The style of the sample is atrocious, and reads like bad <abbr title="PHP
HyperText Preprocessor">PHP</abbr> code all the way down (and it's a long way
down).  He's providing his own <abbr title="Application Programming
Interface">API</abbr> syntax for Kayak, and his implementation of it, and
basically trying to impress upon everyone how much better your code reads and
works when you focus on the syntax first, and are willing to do what it takes to
make that syntax happen.

## Goodnight

![''](http://images.thoughtbot.com/ui/2007-11-5-skiiing.jpg)

And that's it!  This is my first RubyConf, unfortunately, I wish I'd been able
to see it when it was a little more lowkey.  I heard that this year there were a
little more than 500 registrants, which is less than the ~1600 for RailsConf
2007, but is still pretty big.  Most of the good presentations were
inspirational in nature, not technical, and most of them succeeded at doing
that.  Matz' town hall and keynote were especially surreal, but I do feel a lot
more connected to the development of the Ruby language, and to the community as
a whole, after participating.

I really worry about the Ruby community, and whether it can stay so positive.
Already, I feel like the pride of 37signals is pushing its way in to everybody,
its influence combatting with the humility of the original Ruby community.  Matz
and DHH are polar opposite personalities, yet both have strong wills and large
influence.  As the Ruby world swells in numbers and sense of importance, it
could be very difficult indeed to prevent our culture from making the next step
in Matz' chart.

The coolest people in Ruby, doing the coolest work, are those who don't need
Ruby at all.  Everyone who appreciates Ruby enough to devote time to building an
alternate implementation of it, or a web framework in it, or something insane
like a VoIP server, appreciates it because they're well versed in alternatives.
Even [\_why](http://hackety.org) has shut down his Ruby blog and opened one
dedicated to coding as art.  And when something better comes along, these minds
will move along with it, and they will enjoy the next window, the one that has
just closed for Ruby&#8212;the window that opens with early adopters and
progressive thinkers, and closes with opportunists and legal departments.
