We're using IronRuby as an integration layer in our .NET applications. All of our client/server apps fire fine grained business events whenever anything interesting happens. We set up a convention based file structure on our app servers that can allow us to handle any of these events by dropping rb files in a directory with certain names that match the event we want to handle, and the context surrounding each event is given to that ruby code during execution. (We use http://github.com/PlasticLizard/Bracket to boil IronRuby down to a zip file for easy versioning and deployment without having to actually install IronRuby on our deployment targets). We used to have a formal .NET message contract for each type of event we wanted to send out of our systems (a la WCF or NServiceBus), but we've found it much more flexible to do the mapping in IronRuby and compose our outbound messages in dynamic code. So far we're using this scheme to write XML files to network shares for other apps to pick up or to publish messages to a RabbitMQ broker (via the Bunny gem, which works well with IronRuby). Having the combined power of .NET and Ruby and the flexibility of Ruby at the integration layer is very liberating. IronRuby was the gateway drug at our shop to Ruby itself, so now instead of using .NET/SQL Server for our web apps we use Rails/MongoDB and deploy on Linux boxes hosted at Rackspace, but because of IronRuby we are able to share a common set of messaging libraries at the edges of the systems, which reduces friction quite a bit. We can evolve our integrations with our .NET applications orders of magnitude faster using IronRuby than we used to achieve purely using managed code, which, of course, requires a full build/package/deploy cycle for any kind of change, and change at the integration layer especially in an event-driven environment is usually fast and furious. My hope for IronRuby is that it will someday run native gems and be truly cross platform. Every time I try to use IronRuby as a first class environment, meaning beyond auxiliary roles such as integration or automation scripts, I hit a brick wall pretty quickly - things like EventMachine, cloud storage gems, image processing, etc. somehow always pop up as requirements, and eliminate IronRuby as a viable runtime, which is too bad, because otherwise I would prefer it to MRI or JRuby given our extensive .NET investments. All in all though we are tremendously happy with the technology. For me, it is probably the most exciting addition to the .NET landscape that I can remember, with potential that far exceeds things like ASP.NET MVC or Entity Framework or whatever other edgy things MS is putting out.
Thanks for all the hard work! Nathan From: ironruby-core-boun...@rubyforge.org [mailto:ironruby-core-boun...@rubyforge.org] On Behalf Of Jimmy Schementi Sent: Sunday, July 18, 2010 1:17 PM To: ironruby-core@rubyforge.org Subject: [Ironruby-core] Send your IronRuby usage and quotes All, It's that time again, where I ask everyone to post what specifically you use IronRuby for, your opinions about IronRuby, or anything you want to say about the project. Just reply to this thread with what you want to say, but also feel free to reply directly to me if you don't want to tell the world about it (ji...@schementi.com). I'd like to take whatever public info and put it on http://ironruby.net/About/Usage and http://ironruby.net/About/Quotes. Even if you have talked about your IronRuby usages and praise on the mailing list before, please send again! This makes sure we know about it and put it online. Thanks! ~Jimmy
_______________________________________________ Ironruby-core mailing list Ironruby-core@rubyforge.org http://rubyforge.org/mailman/listinfo/ironruby-core