As organizations build out their SOAs, open source software is increasingly seen as a viable alternative to commercial product suites. But a lack of integrated open source stacks and a slew of misconceptions still impede widespread adoption.
One of the biggest myths surrounding open source is that it's free, said Mark Driver, a vice president at Gartner Inc., in a presentation last week at the Gartner Application Integration and Web Services Summit.
"You can get the license and the code at no charge. You can even modify and redistribute it, but it is not free," he said.
Complex operational management and technical support costs are commonly overlooked costs with open source software.
Additionally, developers have no common tools for managing applications running on the open source stack and have to manually assemble and integrate open source components, which can be a costly endeavor, according to a recent report from Cambridge, Mass.-based Forrester Research Inc. In fact, the high cost of this custom integration has been a big barrier to open source adoption.
Nevertheless, open source stacks generally have certain advantages over proprietary stacks in that they are highly customizable, free from any one vendor's control and provide flexibility through code transparency, the report found.
Additionally, the fact that open source code is viewable by the public means that programmers are more conscientious about their work, which results in higher quality and more frequently updated code, Driver said.
Ashvin Vellody, a senior manager of architecture and security at Chicago-based U.S. Cellular Corp., is starting to look to open source software to help lower his company's cost of ownership, which is currently running on BEA Systems Inc.'s WebLogic application server.
"If the technical quality of an open source J2EE (Java 2 Enterprise Edition) solution, such as JBoss is good for [our] applications, we will definitely look to that," Vellody said.
In fact, the majority of the audience at Driver's presentation represented companies running on the J2EE platform, which is comprised of both proprietary and open source implementations.
"Enterprise Java no longer just equates to J2EE," Driver said. "Today, it encompasses more open source frameworks like Hibernate and Spring."
While proprietary stacks from vendors like BEA, IBM, Microsoft, Oracle Corp. and Sun Microsystems Inc. do meet the majority of application requirements, none can claim to have completely finished the integration work on their products, the report said. As a result, Forrester expects customers to increasingly turn to the open source development community to provide cheaper, more flexible and integrated alternatives.
Gluecode Software Inc., OpenLogic Inc., SourceLabs Inc. and SpikeSource Inc. are a few of the vendors developing common tools for managing applications running on the open source stack expected to be available within the next year, the report said.
In his presentation, Driver also dispelled common myths surrounding the J2EE and .NET platforms, such as the belief that Java is more scalable than .NET, or that Java has become too complex. A common .NET myth is that Microsoft hates open source, when in fact it only hates the General Public License, he said.
Many organizations aren't just using one technology, but are combining the productivity of the .NET platform with the flexibility of Java and open source, Driver said.
"There are now multichannel applications that use different technologies," he said. Since rich client development on the Java platform isn't as mature as it is on .NET, you might choose to write a fat client on .NET that talks to a J2EE middle tier.
"PHP scripting is also being used in front of Java because [Web developers] don't need to use JSP [JavaServer Pages] to develop HTML applications," he said.
Indeed, Driver said a lot of small consultant companies are using the LAMP (Linux, Apache, MySQL, PHP/Python/Perl) stack.
However, due to their relatively immature support for Web services, companies aren't entirely using open source scripting languages to build out their SOAs. Instead, Perl, Python and PHP are commonly being used in the areas of Web development, systems administration and integration tasks.