The InfoWorld Bossies are chosen annually by Test Center editors, analysts, and reviewers. The winners represent the best free and open source software we've used. In application development, our choices were spearheaded by contributing editors Rick Grehan and Martin Heller.
Got an open source favorite we missed? Please send us a note.
db4o began life as a Java database library, but its designers have since created parallel editions for the .NET languages. In 2005, db4o implemented Native Queries, which allow you to express queries as Java (or .NET) methods. Recent additions to the library include Transparent Update and Transparent Activation, which more completely automate object persistence. The engine itself deduces how much of a persistent object's members must be read from and written to storage, simplifying coding and providing better memory management. Also new in db4o is support for Microsoft LINQ. Version Control
Distributed version control has become a major need as development teams have become more geographically distributed. Originally the brainchild of Linus Torvalds and currently maintained by Junio Hamano, Git is the revision management tool of choice for several prominent open source projects, including the Linux kernel, X.org Server, One Laptop per Child (OLPC) core development, and the Ruby on Rails Web framework. The Git engine is at least an order of magnitude faster than other revision control systems for large projects, and it has strong support for branching and merging. Web Client Library
HttpClient is an open-source Java HTTP client library begun in 2001. Formerly a component of Jakarta Commons, it is now being maintained by the HttpComponents project. Though there's nothing earth-shatteringly new about HttpClient, it is as useful as ever. Particularly helpful are property settings that let you configure HttpClient to dump detailed 'on the wire' data to System.out. If you're a Java programmer with a complex application staring at you, swing by the HttpClient-3.x site and you'll have your client application done in no time. Parallel Programming
The effective use of multi-core processors is one of the more difficult and pressing problems facing software developers today. Over the years, there have been many proposals to address parallelization, many of which involved new languages. Intel Threaded Building Blocks (TBB) is a portable template-based C++ library that implements a higher-level, task-based parallelism that abstracts platform details and threading mechanism for performance and scalability. The very interesting Microsoft Parallel Extensions to the .NET Framework, which implement task-based parallelism through a class library, are not open source. Business Rule Management System
Drools is a worthy rival to leading enterprise competitors Blaze Advisor and JRules, but is available free under the Apache open source license. It combines a very fast runtime engine, a full-featured rule repository, excellent Eclipse-based developer tools, and support for Excel-based decision tables, allowing rules to be written and maintained by business analysts. The developer group is large, and the project moves fast. Drools even has one feature the market leaders lack: the ability to import rules from almost any other BRMS. Rich Internet Applications
Few SOAP testing tools are as easy and powerful as soapUI. It is available either as a standalone product or as a plug-in for Eclipse, IntelliJ, and NetBeans. Install soapUI's Eclipse plug-in into the Eclipse IDE, and you have a powerful SOAP debugging and testing toolkit. All you need to do is import the WSDL from the target server, ask soapUI to build test SOAP requests, and turn it loose. Various views let you dig into the wire transactions of the SOAP requests and responses, modify test requests, examine responses, and quickly isolate the SOAP server's problems.