This post originated from an RSS feed registered with Java Buzz
by Warner Onstine.
Original Post: Call for comparisons
Feed Title: BlackBox
Feed URL: http://warneronstine.com/blog/tech/java/?flav=rss
Feed Description: BlackBox - Blog on Java, OpenSource, OS X, Movies, Restaurants and other things.
I was having a chat with my friend Erik about some of the problems that exist in the Open Source world, specifically the Java Open Source community.
So, besides the obvious (documentation), what are some of the other problems?
Comparisons - There are a number of different implementations that solve the same problems. Yet these can be difficult to
Understand what problem they solve
Understand how these might compare to other systems that solve the same problem
See how a system that might have been designed for one purpose but is perfectly suited to perform in another capacity
So, what are some prime examples of this?
XML parsing, processing - I can think of at least 3 different technologies that do things with XML to ease creation and processing (JDOM, DOM4J, and Xerces)
Web Application Frameworks - There are several of these out there as well, what's the difference? Why were they done in the first place?
Object/Relational Mapping Tools - again, there are several implementations, why choose one over another?
So, as developers what can we do (and I'm guilty of this as well)?
Explain our reasoning behind the architecture
What other frameworks are out there that do what we want to do?
How are they different from ours?
What else can be done?
1) Those of us who have actually used multiple frameworks (be they XML, Web App, or O/R Tools) should write up some comparisons and post them online. But they shouldn't be dead documents, they need to be living, invite others who have used a competing framework to add to your doc, your code examples, whatever. I am eating my own dogfood in this instance. I have used Torque for quite a while, and decided to start looking at some of the other O/R Tools. While I have decided to use Hibernate for most of my projects moving forward, I created a comparison package for Torque, Hibernate, OJB, Castor, whatever. Please visit ortools.warneronstine.com, checkout the code, send me patches, give me docs, whatever, I want this to be a living comparison of Object/Relational Mapping Tools.
2) Let our respective communities know about our taste-test contest. If others don't know about what we are trying to accomplish they can't help. This help can come in the form of links to other comparisons (living or dead), code, documentation, patches, whatever.
3) Take up the gauntlet! Write some code, contribute some docs. Honestly if you use something like Hibernate, or Struts, you should feel some obligation to helping promote them. Now i'm not saying that you have to do a lot, just donate 2 or 3 hours to something you use. Compared to the weeks, months, and sometimes years that most developers sink into projects it's nothing, but it helps. But if you don't I won't hold it against you :-).