//-->

Ethical Software by Alex Bunardzic

April 19, 2006, 9:46 am

Practical Aspects of Canada on Rails

Filed under: Ruby on Rails, Radical-simplicity — Alex Bunardzic @

The first international conference on Ruby on Rails was a portentous event summarizing Rails-related things that happened so far, and projecting the vision and the shape of things to come. Naturally, many of the presentations focused on the vision, the overview, the technological and the cultural impact that Rails brings to the fore.

But another aspect, also very important, was well represented at the conference. I’m thinking about the practical aspect. How to introduce Rails into the existing computing ecosystem, how to make Rails do things in an even more agreeable fashion?

I will now mention some of the presentations that I found particularly useful, from a practical standpoint.

Rails and Legacy

First and foremost, Robby Russell’s Sneaking Rails Through the Legacy System seemed to have opened the largest number of doors. Robby did us a huge service by offering a powerful abstraction: acts_as_legacy. What used to be a cludge and a ‘trust me, you don’t want to go there’ situation, has all of a sudden turned into a nice first class citizen in the Rails-hood. I cannot tell you how much I appreciate this kind of thinking.

Others should (hopefully) follow suite. Review Robby’s slides, and see if other ideas come to mind. What else from the existing computing ecosystem could we, the Rails heads, adopt and tame?

Focus on Infrastructure

True to the core spirit of Rails to stay focused exclusively on the infrastructure (as advocated by its creator, the Danish guy with a very difficult name to spell), James Adams’ Rails Engines offered another ultra-practical aspect by introducing the convenience of engines. I tend to find that approach useful, and truly appreciate any effort, concept or gimmick that will allow me to be exposed to less infrastructure.

Rock on, James! Toot-toot!

Minimize the Client Infrastructure

Rails is ferschizle, but the one remaining ugly part is the mess known as Javascript. Well, guess what, go over Thomas Fuch’s slides (Advanced Rails AJAX techniques) and you’ll be amazed at how much practicality he managed to cram into the damn thing.

It’s very sweet to see when someone slams the last nail in the coffin of the client-side bogeyman.

I’m still on the fence when it comes to Ajax, but anyone who succeeds in simplifying Javascript is awesome.

Can Rails Cope With ADD?

Michael Buffington unveiled his plans for world-wide domination by lowering the bar and catering to all the ADD fans out there (which is a madly growing community). The lessons in practicality abounded. Overall, Michael’s message was “don’t hyperventilate”. Or, “optimize the obvious”.

In a nutshell, he showed us his massive parallel multiplayer game running entirely in Rails and on a single box with 2 gigabytes of main memory. That’s it. He hadn’t had a chance to see the server choke (yet), and is thus letting it run into scalability problems in its own sweet time.

The only thing that was making Michael nervous about this venture is an email from some mental asylum warden, who thanked him for creating the game that keeps his suicidal patients from committing suicide. That’s a load of pressure on poor Michael, but his trusted servant Ruby on Rails makes him sleep soundly, nevertheless.

Test/Behavior Driven Development

I’m still on the fence on this one. Yes, it sounds fabulously reasonable, but something just does not add up, at least in my mind. I’ll blog some more on that one, that’s a peculiar one. For now, suffice it to say that I’m not sure how practical this practice is (get it, ‘practical’, ‘practice’?)

Anyway, stupid way to end this post, but I ran out of steam.

Leave a Reply

You must be logged in to post a comment.