> > Keys to this: they have to be able to work adequately as separate > components, and very well together. They should all use only freely > available components. Last of all, and this is just something > that bothers > me: they shouldn't just be copies of the way Language X does something, > with the assumption that you have used Language X and would > rather read the > documentation to original Language X implementation. I heartily second this last point. I get concerned when I read posts advocating Ruby applications designed to follow a spec designed with another language in mind. Compatibility/interoperability are interesting goals in a general sense, but carry certain risks. There was a lengthy thread on ruby-talk concerning Ruby, XML, and W3C specs. By and large, while many people felt adherence to specs made certain tasks easier to understand, those specs were not written with Ruby in mind, and blind adherence would mean foregoing much of Ruby's elegance. The particular case was the W3C XML DOM. It's a "standard" in the general W3C-spec sort of way, and many people are familiar with it, but the API just falls flat compared to how one can manipulate XML using a Ruby Way API (see REXML). So, specs like EJB or J2EE or Ant may be the best thing since sliced bread for the Java crowd, but they don't reflect a Ruby Way of doing certain things. We should steal the better ideas and then build things that play best with Ruby. James > > --Gabriel >