Friday, March 03, 2006

Informix driver for Ruby

I've been very busy at work, solving many legacy problems. One of them is the amount of unmaintainable, undocumented and buggy C programs for accessing an Informix database for generating ... reports. Another one is an insecure and unfriendly application made with an anachronic, unsupported and buggy application builder, with an Informix database as back-end.

I cannot describe enough how awful it looks, and behaves.

But I've always preferred to be part of the solution, not of the problem. It didn't take too much time to come to the conclusion that a web application would fit better, and that a better language for writing reports was needed.

Yes, a lot of work indeed. And not of my business by the way, I'm just "the DBA". But if solving problems is at your hand, why not do it? Besides, it will be fun.

This seemed to me as the opportunity to bridge my favorite language at the moment, Ruby, and Informix. Ruby is a very powerful and versatile language, easy to read and write, among other advantages. It has a Perl-like formats library [FormatR] for reports and a fabulous web development framework [Ruby on Rails].

The problem is there's no adapter for Informix for RoR, not even a native driver. I made a first attempt to write an adapter, using Ruby ODBC, but always missed a native driver for Informix.

Well, I got some time two weeks ago to write the driver, and thanks to the ease of writing Ruby extensions in C, you can find the preliminary results here. It is not complete, but already usable. Testers welcome. I'd like to hear from you either if it did or didn't work for you.

1 comment:

Gerardo said...

Hello Wehyun

For you and for anyone who wants to try it, just e-mail me to gerardo.santana gmail.

Thanks for your interest!