Mint Digital

Gotham Ruby Conference

Posted in Tech by Cameron Price

25 April, 2007

goruco-nametag

Last Saturday, I went to the Gotham Ruby Conference. It was partly sponsored by Google, at their New York offices. They're beautifully set up to handle these kinds of things, with a nice sound system, open wireless, and four big screens for presentations. Overall it was a great day, with interesting speakers, and ample opportunities to meet our fellow New York (and Boston, and Philly, etc) Rubyists. Here's my quick summary of what I saw:

Presentations: Jay Phillips (Adhearsion): Jay has written a very cool DSL in Ruby for Asterisk systems. If you've never played with asterisk, it's very, very cool, and not the easiest thing in the world to configure. Adhearsion makes it a lot easier. Basically you put one line in the dialplan of your asterisk box which tells it to always ask Adhearsion what to do next. This is based on some CGI like thing in asterisk called “AGI”. Then, you can program all sorts of complex phone applications in ruby, and Adhearsion will take care of the rest. Very very neat, and he’s working on integration with elements of rails (ActiveRecord, for example). There were some questions about how scalable AGI is, but I suspect that if Adhearsion gains traction, a new transport could be devised easily enough, if needed.

Of all the talks I saw, this one definitely got me thinking the most. Adding the ability to script your phone system with a fully featured language like Ruby, will open the door to much more interesting applications. Up until now, it seem that Asterisk is being used mainly for either typical office phone systems, or call centers. You're going to start to see people developing apps that use the phone in much more novel ways.

Nick Sieger (JRuby): This was basically a demo of JRuby, in which he showed the ‘mephisto’ rails app running nicely, and also showed creating a swing app in ruby. Interesting things: - JRuby is partially compiled, which in conjunction with the Hotspot VM could deliver pretty sweet performance - Ruby GC sucks, Java GC is much better. This could be a big win - Java supports native threading, Ruby does not. Also a big potential win. (downside? Things like ActionController are inherently not thread-safe, so we'd need to think about that all of a sudden)

Jeremy McAnally (Camping): Camping is a lightweight web framework, allowing you to put Model View and Controller all in one file. It's neat, but I can't think of a scenario where I'd actually use it. Maybe just a failure of imagination.

Paul Dix: Categorizing Documents in ruby. Very interesting talk, but quite academic. He covered the techniques behind text classification, and the different kinds of classification that exist. There are some Ruby libraries that can help you implement things like Baysian filtering etc, but it’s not a simple thing. My main takeaway? The day I need to do this is the day I call Paul and try to hire him. If you're interested in the details, Paul has posted them here.

Jay Fields (Business Natural Language): Ok, this was not my favorite talk of the day. Jay claimed to have devised a technique whereby business users could specify behavior in plain English. When he showed us the code it turned out to be a bunch of regexes stripping out the ‘the’s’ and capitalizing things. At the end, he didn't take any questions. Just odd. My feeling is that even the most non-technical business user can be taught a proper grammar as long as it's sufficiently simple, and (more important), sufficiently reflective of the business domain in question. Maybe there's something in this, but the talk didn't really convey that to me.

Trotter Cashion (Mocks, Stubs, Contexts): This was a very interesting talk, and it got me more excited about testing then any healthy person has a right to be. Mostly I learned that I have a lot to learn here, but here are some of the key points. - Don’t mock everything, just because you can - Don’t over-specify behavior - Mocks can hide real bugs if used improperly.

I'd like to write more about Mocks and Contexts in Ruby, but I haven't dug into it enough yet. More later.

Lightning talks These were five minutes each, anything you like, and you could sign up on the spot (I did).

I can't remember all of them, but here's a few that stood out.

    fixmynewyork.org - interesting site for reporting little issues with the city (broken streetlight, etc)
  • one guy wanted professors to start using ruby in education more . The main things he thinks we need are textbooks with problem sets. I think he might really be onto something there.
  • Zed Shaw spoke about his new project Utu. Well worth a look. If nothing else, it'll be a pretty cool social experiment.
After the conference, we all went to a bar in the East Village where there were four (!) free drink tickets waiting for conference attendees. This had exactly the effect you might imagine: a big crowd of geeks staggering around debating the finer points of RESTful architectures with badly slurred voices. A good time was had by all, and thanks go to the Nyc.rb crew for organizing the event.

Add your comment

  1. Or sign in using these:

    Connect with Facebook