If you’re a Ruby or Python developer building AJAX applications, you’ve got to learn JavaScript. Even if you’re converting Ruby code to client-side JavaScript with a tool like RJS, it can still be helpful to know the AJAX component for adding features and debugging.
Now Microsoft is promoting APAX and ARAX, techniques similar to AJAX that supplant JavaScript with Python and Ruby languages commonly used on the server side of the dynamic Web apps.
The news was brought to light last week at O’Reilly’s RailsConf by Microsoft’s John Lam, who was there giving a talk on his IronRuby project, and its progress toward running Rails. IronRuby is an implementation of the open source language that runs on Microsoft’s Common Language Runtime (CLR). RailsConf took place in Portland, Ore., May 29 to June 1.
Writing on his blog about the benefits of IronRuby beyond those of running Rails, Lam said “it lets you interact with the rich set of libraries provided by .NET. You’ll be able to use IronRuby to build server-based applications that run on top of ASP.NET or ASP.NET MVC... to build client applications that run on top of WPF or Silverlight… and to test, build and deploy your .NET applications.” Almost in passing, he also mentions the ability to run Ruby code in a Web browser and have it talk to Ruby code on a Web server. “That’s a feature that we feel that many folks will enjoy.” Um…yeah, I kinda think so too.
There’s just one problem: To run Python or Ruby on the browser, you’ll need SilverLight, Microsoft’s media player plug-in. "If this is about using Silverlight to host client-side browser scripting in Ruby, it's definitely an appealing notion,” said Ben Galbraith, co-founder of Ajaxian.com to developer-beat reporter Darryl K. Taft for an eWeek article. “ut the problem will always be about Silverlight being a Microsoft technology."
Maybe you’d be better off with HotRuby, a Ruby VM.