Tools of the Trade

Indeed, open-source tools are now enabling solution providers to build exciting, strategic Web-based applications that can prove quite profitable as corporate customers extend their reach, connect with partners and suppliers, and build their overseas businesses without investing a great deal in software infrastructure. It's an exciting challenge,one that many VARBusiness 500 solution providers are tackling head-on.

"We are seeing more opportunity to wrap our application-development and infrastructure services around our product sales," says Bill Sanders, director of strategic services for Bell Industries' VB169 Tech.logix Group, in Indianapolis.

The typical open-source scenario involves an informal group of programmers who have banded together to work on a specific software project,typically software that runs over some Internet protocols and makes use of common Internet applications, such as the Web and e-mail. It doesn't matter whether the code is written by a teen-ager or an experienced programmer. Often, the programmers are located all over the globe and communicate extensively via e-mail and newsgroups.

"We have 75 active developers around the world," says Marc Fleury, a lead developer and founder of the JBoss initiative, which is one of the leading Java 2 Enterprise Edition (J2EE) application-server development tools. "Open source not only offers the advantage of access to the source code, which makes it easier to fix bugs, but it also makes it easier to develop applications on top [of it."

id
unit-1659132512259
type
Sponsored post

But don't be fooled: Building applications that take advantage of Web browsers, Internet infrastructure and TCP/IP protocols isn't easy. New techniques must be learned, such as the ability to wrangle a rich enough user interface out of an ordinary Web browser and make it functional enough to support dynamic applications. Plus, Internet connectivity can vary widely, depending on the time of day and the type of connection, creating other challenges for developers to incorporate into their applications.

Still, developers remain undaunted. "We would not be able to survive without these technologies," says Ben Reytblatt, CEO of solution provider Quadrix Solutions, Piscataway, N.J. "We have been building Web services into our apps for about a year now, and we see this expanding to the point where our Web services will become as important to the apps we build as any of the other really important platforms and technologies. They will become part of any application that we build."

Java: The Heart of It All

Part of the whole open-source arena,some would call it a movement,has to do with Java, the programming language originally developed by Sun that has now become the heart of a whole range of tools and add-on technologies. While Java has had a bad reputation for buggy client-side implementations, the better developers are looking toward server-based Java code as their savior. Java is especially useful for projects that need to be portable among different Windows and Unix server platforms.

"Java is still the standard and is becoming stronger by the day," says Ari Kahn, CTO of Web content-management software vendor FatWire, Mineola, N.Y. "There are so many code libraries, application servers and services, and other supporting infrastructures for application development."

As Web services take off for developers, Java becomes even more attractive. "Java will continue to be the platform of choice, as hardware and operating systems take a back seat to Web-services platforms," says Albert Lee, vice president of the server business unit of Halcyon Monitoring Solutions, Toronto.

The real benefit of Java is portability, adds Jason Robbins, a senior product manager at CollabNet, a collaborative software- development company based in Brisbane, Calif. "Customers want universal access to their applications from all over the world, in different languages and on all platforms," he says.

Undoubtedly, those applications will require a higher level of sophistication. "In the next few years, we will see platforms being defined by security, communications protocols and available, reusable application libraries rather than operating systems or languages," Robbins says.

But Java,specifically J2EE,is just the beginning for developers looking toward using open-source tools. To design the most flexible Web-enabled applications requires more than Java programming expertise: Developers also need Java-enabled application servers and development tools.

"J2EE is a strong technology platform,it provides the transactional framework and the application-development framework in one suite of tools," says Deb Mukherjee, CTO of Teaneck, N.J.-based Cognizant Technology Solutions VB171. "This is different from C++, which never really provided both things."

Roger Smith, CTO of NCS Technologies, a Piscataway, N.J.-based systems integrator, is also bullish on J2EE. "It has certainly matured to the point where most of what we build is J2EE-based," he says. "We like the ability to reuse applications across the enterprise."

Open-Source Tools

The open-source community has risen to meet these challenges, designing software tools,such as Apache's Tomcat project, JBoss and Ant,that have captured the attention of VARBusiness 500 solution providers.

%95 Tomcat is a commercial-quality server solution based on Java that supports the Servlet and Java Server Pages (JSP) specifications. Managed by the Apache Jakarta Project, it's useful for developing Web-based applications. It runs on top of the Apache Web server software on a wide variety of operating systems, including Windows and Unix. The current version is Tomcat 4.0, which requires Java Development Kit (release version 1.2, or later). Tomcat supports the Servlet 2.3 and JSP 1.2 specifications from Java Software.

%95 The current version of JBoss, the J2EE Web-applications server tool, is 3.0. A fully functional applications-development platform, JBoss is the product of 100 individual developers and has commercial-quality extensions for such advanced features as clustering and local-code optimization. The group that developed it offers various training seminars around the United States to teach users how to tap into its capabilities. "Open source and crappy products don't work well together," Fleury says. "People work on JBoss for free because it is technologically advanced and they learn from the experience."

%95 Ant is a powerful scripting tool for building platform-independent XML-based applications, and is also part of the Apache Jakarta Project. The current version is 1.5. "Ant has a lot of built-in tasks that allow for very flexible file manipulation, Java compilation and source-file archive control," says Andrey Akselrod, senior software architect with integrator and software developer Runtime Technologies, New York. "Also, it comes with optional tasks that allow integration with other software versioning and management tools."

Tomcat, JBoss and Ant, however, are just the tip of the open-source iceberg that is bearing down on the commercial applications tool providers.

"[There's a rapid uptake in collaborative development tools that support aspects of the broader software-development process," CollabNet's Robbins says. "For example, issue-tracking tools coordinate work among developers and manage feedback from users, and project-hosting environments provide centralization, standardization, visibility and immediate access for development projects across an entire enterprise," he says. "Three years ago, Unix was losing share to Windows, and Java was a new hope that had not really proved itself. Today, Windows' dominance is seriously threatened, and operating systems, in general, seem less important as platforms."

Some of the new Web-based applications that developers are creating with open-source tools are designed to run on a variety of new mobile devices. Two-way pagers and screen phones almost always employ some form of Java, and thus motivate developers to become familiar with Java-based tools. "Open architecture is the way to go when developing wireless or mobile solutions," Tech.logix's Sanders says.

Alternatives And Extensions

Still, not everyone is enamored with the freely available open-source tools, and that leaves room for commercial vendors to continue to play a role. Developers, after all, are quick to realize the limitations of their tools and switch to something more powerful. "If a tool places more constraints than we deem acceptable or locks us into something proprietary, we stay away from it," NCS' Smith says. "In my book, a tool is good if it automates the mundane development tasks and allows us time to concentrate on the core program logic. BEA Systems' Workshop, [for example, is one such tool for easing the development of Web services."

And Java isn't the only game in town when it comes to emerging Web standards. Numerous protocols are in the works or are supported by a variety of new development tools, including the Simple Object Access Protocol (SOAP) and Extensible Markup Language (XML). "Just like the early days of the Web, when it didn't matter where the content resided as long as it was served up via HTTP, it won't matter if your applications are running on Windows or Solaris or Linux, just as long as it talks SOAP and XML," Smith says.

As the open-source projects improve with greater contributions and polishing from their numerous authors and developers, the tools are becoming more attractive, particularly for complex application-integration projects. "XML is now well-embedded in all app-app integration solutions," Cognizant's Mukherjee says. "SOAP is decidedly the winner in interapplication communication as the application crosses the enterprise boundary and will be used for both supply-chain and demand-chain management applications."

George Brown, president of Vancouver-based Aston Group VB188, agrees. "These tools are alive and becoming mainstream," he says. "They are now penetrating the vocabularies of the everyday developer." n