Look out, Java. Ruby on Rails is staking out your turf.
But all is not lost for Java, which still enjoys advantages in areas such as security, based on feedback at the Ruby on Rails Camp event, held Thursday at the IBM Almaden Research Center.
Not long into the morning festivities, Ruby on Rails faced off against Java in the minds of the 150 attendees and organizers. Ruby is a trendy, object-oriented scripting language; Ruby on Rails is an open source Web framework leveraging Ruby. A theme of the event was how to use Ruby in business applications.
Although Ruby on Rails programs run slower than Java systems, Ruby is much easier for programmers to use, said Max Dunn, an event organizer and programmer. He argued that it may be cheaper to use Ruby on more servers than it is to hire more Java programmers who would need fewer servers. Silicon, as in more servers, may be cheaper than carbon, as in more programmers, he explained.
"Ruby, you read it and it reads like natural language. That attracts me," said Wido Menhardt, a conference organizer and programmer.
"Ruby is a really good thing. It has its pluses and it has its minuses," said independent programmer David Pollak, an attendee and presenter at the event.
"The syntax of Ruby is beautiful," Pollak said. It is also dynamically typed, he added. "This is probably the biggest brain change for Java people."
With security, the advantage goes to Java over Rails. "A lot of the security, you have to do by hand, which in some cases makes it less productive than Java," Pollak said. "In Rails, there's not a security model yet."
Ruby also has no navigation tools and developers have to write their own tests. "The compiler's not going to do a lot of your homework for you," Pollak said. Ruby on Rails, though, "has the most complete testing framework that I've ever seen in anything."
Ruby developers must be more meticulous about testing than Java developers because of the dynamic typing nature of Ruby, Pollak added.
Java utilizes the write-once, run-everywhere concept via the Java Virtual Machine, while Ruby looks to integrate well with every platform, Pollak said. Java also can handle more complex database transactions and stored procedures.
Strong HTTP mapping, however, is offered for Rails, Pollak added.
The event was conducted in the "Unconference" style, in which presentations are given in an informal, ad hoc basis by attendees; there is no submission of papers several months in advance and no pre-set agenda. Attendees gave presentation on topics ranging from Rails security to deploying Rails to abate global warming.
Demonstrations were offered on a multitude of projects based on Rails, including Pongyow , a social networking site featuring photos, video and blogging; www.spock.com , a search engine; and Ozmozer, which enables information-sharing by aggregating links and RSS feeds in a mashup style. Dunn showed MaxWiki , which melds a wiki with content management.
A developer of DropVolley.com, which is a social networking site for adult-league tennis, said Rails proved more productive at his current place of employment than Microsoft's .Net technology.
IBM is using Ruby on Rails in efforts such as its Koala project, which involves development of a wikipedia-like system for business processes. Users can record and play back scripts. But the company thus far has made no commitments to releasing any development tools for the Ruby on Rails crowd, said Steve Cousins, senior manager for IBM's User-Focused Systems Research Group at the San Jose site.
Also at the San Jose research facility, IBM is working on a Web 2.0-based project called Fringe, which is social networking technology providing background information about business contacts, such as what projects a person is working on at the moment. Fringe combines different information services in a mashup style.
Fringe technology may be incorporated into a Lotus collaboration product. IBM officials did not know whether Ruby was being used in Fringe.
Research in activity management also is happening at the San Jose site.