Why are cloud computing and Ruby on Rails a good match? Let's hear what Dave Vandervort of Xerox Innovation Group has to say!
Why are Ruby and cloud computing a good match? Basically: why Ruby? :
Ruby is currently the best of the dynamic languages. It is 100% object oriented. It’s syntax is extremely clear and concise. It supports powerful high end capabilities such as closures, recursion and lambdas (functional programming). Ruby’s reflection and macro programming capabilities are very advanced, allowing implementation of domain specific languages that allow programming to be logically expressive.
What that all boils down to is one of the most common things you hear Ruby programmer’s say about using the language: “It makes me happy.”
Are there certain applications you think run better in Ruby?:
I’ve used Ruby for automating system administration and text processing tasks that I used to do in Perl. That’s how I got started with Ruby. It’s flexibility and ability to handle domain specific languages made it excellent for rapid development, prototypes and one-offs.
That said, when I found out how easy it was to develop web applications with Ruby on Rails, I abandoned PHP, which I had used happily for years, and never looked back. Rails has built in testing, a highly logical layout and moves annoying bits like DB queries into an abstraction layer where the programmer doesn’t have to worry about them.
What about the frameworks you use for deployment?:
[With Rails] you can concentrate on the application logic and let the web application flow from that, instead of trying to hammer all the little pieces into place yourself. Note that in my early Ruby work I never used it for the web. Rails changed that.
They all have their good points. I’ve played with several other frameworks but for major work I stick with Rails, itself. I am very much looking forward, though, to the upcoming merge between Merb and Rails. Merb is important and will extend Rails considerably.