Tapestry for Nonbelievers
A new article by I. Drobiazko and R. Zubairov introduces v. 5 of the Apache Tapestry component-oriented web framework. The tutorial shows how to create a component and covers IoC in Tapestry and Ajax.
- Java,
Tracking change and innovation in the enterprise software development community
Posted by Obie Fernandez on Dec 10, 2007 06:00 AM
One of the best kept secrets at this year's RubyConf was the working whereabouts of two of Ruby's hottest superstar developers: Ryan Davis and Eric Hodel of Seattle.rb. Ryan revealed the secret last week: they've officially joined Engine Yard to work full-time on next-generation Ruby runtime Rubinius. (Learn more about Rubinius on InfoQ)
Engine Yard, a premium Ruby on Rails hosting company headquartered in San Francisco, has grown to 21 people around the world this year. In the last week, they also announced that Brian Ford and Wilson Bilkovich, two of the most active committers of the Rubinius project will also join the company in January.
Engine Yard's corporate support of Rubinius is not new. They hired on its project lead, Evan Phoenix, back in May of this year. One of Engine Yard's founders, Ezra Zygmuntovich, cited community goodwill as a driving factor in that decision. Goodwill certainly translates into revenues, perhaps dramatically so for a small company such as Engine Yard, compared to the other company generating heaps of goodwill in the Ruby community: Sun Microsystems, with its generous backing of the JRuby project and the world-class Ruby support being built into NetBeans.
It's becoming apparent that more than community goodwill is at play for EngineYard. Better Ruby performance impacts the company's bottom line directly. Ezra told InfoQ, "Everybody knows the current Ruby interpreter needs help... we run into plenty of problems with the current interpreter and I think Rubinius is going to help a lot."
In case you haven't been following the red-hot developments in the world of Ruby runtimes, Rubinius is an open-source implementation of Ruby implemented in the manner of Squeak (Smalltalk). It has a small core virtual machine written in C, but is otherwise completely written in Ruby itself, including the compiler. Incidentally, the Rubinius project is moving along at a fast clip and enjoys massive developer support, with 67 committers in its 1.5 year history. Evan estimates that about 25 of the committers are active contributors.
While Rubinius performance is nothing to brag about right now, that is certain to change. The massive IQ behind the project is yielding results, fast. Ruby performance expert Antonio Cangiano regularly publishes "shootout" results on his blog, and praised Rubinius last week:
Looking at the old table and then at the new one, it’s hard to believe that the same implementation could improve so much in such a short period of time. In 16 tests it actually managed to be faster than Ruby 1.8.6. How fast will Rubinius be in a year? I personally consider Rubinius to be one of the most promising Ruby implementations out there.
The next major milestones for Rubinius revolve around release of a 1.0 version that satisfactorily runs Rails. A big part of that effort is to get RubyGems working, which is reportedly Eric Hodel's primary focus right now (which makes sense given his connection to the RubyGems project). Evan estimated that Rubinius on Rails should fall into place rather quickly after RubyGems support is finished, perhaps as early as February 2008.
Ezra is currently involved marginally in Rubinius, but planning to transition to full-time software development duties in January. Already, Ezra is known to be working on getting the Mongrel web server to work on Rubinius. Ezra's own Merb framework, considerably simpler than Rails, will be supported sooner than that.
As for IP issues, according to Evan, Rubinius will be following the Asterisk open-source model, where the copyright holder and steward of the project will be Engine Yard.
Incidentally, the Engine Yard hires are not the only corporate-sponsored developers on the Rubinius project. Powerset's Kevin Clark is reportedly spending 20% of his time on the project as well.
Info 2.0: IBM's vision for the world of Web 2.0 and enterprise mashups (Webcast)
Fighter Jets and Agile Development at Lockheed Martin (Case study)
Introducing Project Zero: Building RESTful services for your Web application
We weren't able to push this out before Evan and the guys from out of town flew on Friday, but as a result of the code sprint this last week Mongrel is running on Rubinius: http://glu.ttono.us/articles/2007/12/10/rubinius-runs-mongrel This marks a huge milestone for our C extension compatibility layer.
A new article by I. Drobiazko and R. Zubairov introduces v. 5 of the Apache Tapestry component-oriented web framework. The tutorial shows how to create a component and covers IoC in Tapestry and Ajax.
In this interview, Burton Group consultant Pete Lacey talks to Stefan Tilkov about his disillusionment with SOAP, his opinion on REST, and addresses some of the perceived shortcomings REST vs. WS-*.
Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.
Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.
Deborah Hartmann interviewed Segundo Velasquez about his experience as customer with an Agile team during the initial phase of software design of a product.
David Cooksey shows how to fine grained versioning to a ClickOnce deployment using an HttpHandler written with ASP.NET, making partial rollouts to a test audience much easier.
Windows workflow (WF) is an excellent framework for implementing business processes, but lacks support for human activities. This article describes a completely generic approach for changing this.
In this interview taken during OOPSLA 2007, Markus Voelter talks about the importance of documenting the software architecture, and gives some good and also bad examples on how it could be done.
1 comment
Reply