As Published In

Oracle Magazine
July/August 2003
Developer OTN

Promoting the Penguin

By Robert Hall

Oracle expands offerings for Linux developers.

Robert Clevenger is principal product manager for Oracle9i JDeveloper at Oracle. During the first few months of this year, he traveled across the United States, visiting Java and Linux user groups and presenting and discussing options and strategies for application development on the Linux operating system. I recently talked with him about these activities.

Robert Hall: Who are the members of the Java user groups and Linux user groups you've been speaking with?

Robert Clevenger: The audiences are mostly corporate application developers, but we also get a fair number of hobbyists. Audiences are getting larger, too, as Linux gains in popularity.

RH: Why are the members of these groups interested in Linux?

RC: Two key factors are cost and open-source software. Linux is an excellent low-cost alternative to Windows or UNIX. Developers also like it because Linux and applications that run on Linux are portable to most modern architectures, and many good diagnostic and tuning packages are also available.

Open-source with GNU General Public License (GPL) licensing effectively makes the code available to anyone to use, study, fix bugs, or add features. Linux is a young and dynamic operating system with lots of momentum: There are more than 18 million Linux developers worldwide, and the number is growing.

RH: Who or what is driving the move to Linux: corporate directive, developer preference, or both?

RC: Both. Businesses are very cost conscious in today's economic climate. They're looking for ways to maximize their hardware, software, and development investments. Developers value Linux for its openness, standards, access to source code (and patches), and strong community.

RH: Which Linux distribution?

RC: Oracle is supportive of any effort that offers customers a standardized and thereby more supportable platform to deploy Oracle products. That said, I've been recommending Red Hat and UnitedLinux. Oracle and Red Hat have been working together to create a core set of enhancements in the areas of performance, reliability, clustering, and manageability. We want to enable Linux to support our customer's enterprise-class deployments. These efforts have been integrated into the new distribution from Red Hat called the Red Hat Enterprise Linux AS (formerly Red Hat Linux Advanced Server).

RH: Are users interested in open-source tools and libraries as well as the Linux OS?

RC: Yes, especially Ant, Struts, and CVS. Ant is a Java- and XML-based build tool that has become a de facto standard among open-source Java projects. It's like Make without the quirks. Ant uses XML metafiles instead of Make files—a big plus right there; there's no need to worry about tabs in the file—and can be extended via Java commands, which results in better portability than a tool that relies on shell-based commands or platform-specific scripts.

Struts is an open-source framework for building Web applications. It integrates with standard technologies like Java Servlets, JavaServer Pages, and JavaBeans. Struts enables Web-application development that follows the Model-View-Controller (MVC) design pattern, providing a framework in an area where there was none. Struts is already considered the de facto standard for the J2EE MVC framework and is moving toward becoming a standard (JavaServer Faces). It is influencing the future of J2EE Web-tier development.

CVS is a software-configuration-management (SCM) tool, the de facto standard for SCM among open-source projects. Developers like CVS because it's tried and true: CVS started out in 1986 as a collection of shell scripts posted in the comp.sources.unix newsgroup. The CVS application was created in 1989 and now provides client/server support and supports tunneling for secure connections. And it's extensible with scripts known as "cvswrappers."

RH: Developers are notoriously religious about their tools. In the groups you have addressed, have you seen a consensus favoring one approach or the other?

RC: There has not been a strong consensus one way or another between those who want an integrated development environment (IDE) and those who like the separate command-line tools and editors. Some favor standalone text editors and command-line tools (e.g., emacs) because of familiarity, availability, and low cost. But an increasing number of developers prefer an IDE that includes coding and debugging tools, along with UI design and modeling tools, especially for larger projects. This is different from a couple of years ago, when IDE users were definitely the minority in corporate IT shops.

RH: What do developers see as some of the advantages of an IDE?

RC: An IDE provides coding tools geared for your language, things like syntax highlighting, WYSIWYG editors, even metadata editors in some of the more powerful IDEs. Developers also appreciate code-management tools such as integrated version control, and deployment support. The best IDEs collect everything a developer needs in a single, integrated environment, and they provide access through a single, consistent interface.

RH: What makes Oracle9i JDeveloper a good tool for Linux developers?

RC: In addition to providing all the features and convenience of a first-class IDE, JDeveloper makes it easy to use and update some of Linux developers' favorite open-source components, including Ant, Struts, and CVS. For example, you can create Ant buildfiles from your existing JDeveloper project and use Ant as the IDE's internal build system. Also, JDeveloper provides an embedded Struts 1.1 Runtime, along with several wizards that let you basically point and click to do things like generate Struts actions or create a Struts form bean. And there's another set of wizards for working with CVS: You can log in and out; create connections; import, export, and check out modules; and more.

Also, JDeveloper doesn't lock you in to any one tool set or methodology. It provides a public Extension SDK you can use to extend and customize the development environment, so you can build extensions and integrate additional tools with the IDE. JDeveloper provides quick access to your favorite external editors or tools: You can invoke them from the Main menu, Navigator context menu, Editor context menu, and toolbar.

RH: What other advantages does Oracle offer to Linux developers?

RC: One important advantage is Oracle's proven track record. In fact, Oracle was the first commercial database available on Linux, and we believe Linux is more attractive today than it ever was, as customers are looking for cost-effective solutions. By supporting Linux with Oracle's industry-leading products, we are enabling developers to deploy enterprise-class solutions on the lowest-cost hardware and operating-system infrastructure.

Oracle9i Database is the leading database on Linux. In addition, with Oracle9i Real Application Clusters running on Linux, you can get mainframe quality of service for a fraction of the price.
Next Steps

LEARN
more about Oracle and Linux
/tech/linux/htdocs/oracleonlinux_faq.html

about Red Hat Linux
www.redhat.com

READ about Oracle technical support for Linux
/tech/linux/htdocs/linux_techsupp_faq.html

DOWNLOAD Oracle9i JDeveloper
/software/products/jdev

Oracle9i Application Server is the leading application server on Linux and offers the best price/performance in the industry. It lets you benefit from the most complete application server, with built-in support for Web services, portal, and integration—all on low-cost hardware.

Oracle9i JDeveloper offers Linux developers wizards, editors, and visual-design tools for building applications and Web services according to the J2EE specification. In addition, as I've mentioned, JDeveloper gives you access to your favorite Linux development tools and utilities.

Oracle is also active in the open-source arena. For example, we're publishing a series of libraries and tool kits for Linux that improve Linux's clustering support and add new developer features. The projects include libraries and patches that allow implementation of ultra-low-cost clustered systems using Firewire technology, increased robustness of clusters, simpler development of file systems, and consistent wizards and dialogs for end-user tasks. On top of these technologies, Oracle's clustered file system simplifies the implementation and management of Oracle9i Real Application Clusters on Linux.

There's also a bundle of smaller apps that show how to write good graphical tool-kit applications on Linux. These code fragments comprise some lessons learned by Oracle's Linux development team while building other libraries. All the code is published under the GNU GPL, so the open-source community can adopt these technologies on Linux.

Also, OTN's Linux Center is a great online resource for developers. We provide documentation, technical articles, FAQs, opinion pieces, discussion forums, sample code, and, oh, yes, software. To date, OTN members have downloaded more than 1 million copies of Oracle products for Linux.

RH: What about support?

RC: Oracle provides direct support for the Red Hat Enterprise Linux AS and United Linux/SuSE distributions. Customers running Oracle products on these versions of Linux can turn to Oracle for support if an issue prevents smooth operation of their Oracle implementation. Oracle will diagnose the issue and work with the vendor for those cases where the operating system is suspected of causing the issue.

Oracle also provides OS-level technical support to customers who run Oracle products on key hardware platforms—such as Dell and HP (Compaq)—that are certified with the Red Hat Enterprise Linux AS or United Linux/SuSE. A single support organization ensures the highest level of support and availability, and Oracle customers who have deployed Linux are seeing improved response and faster resolution for critical issues.

Robert Hall (robert.hall@oracle.com) is a principal technical writer with OTN.

E-mail this page
Printer View Printer View
Oracle Is The Information Company About Oracle | Oracle RSS Feeds | Careers | Contact Us | Site Maps | Legal Notices | Terms of Use | Privacy