PDA

View Full Version : Can Linux Get a Lift From Eclipse?



OMEN
10-07-2007, 10:28 AM
Eager to shed its reputation as a tool just for Java developers, Eclipse has quickly embraced newer languages such as PHP, Python and Ruby—as well as older ones like Ada, COBOL and C.

But when it comes to enabling native Linux development, Eclipse isn’t moving as fast. It’s not uncommon for applications originating from Eclipse to target Linux servers, but few are developed under the open source operating system itself, said Forrester analyst Jeffrey Hammond. In fact, only 9.6 percent of Eclipse download requests are for the Linux platform, compared with 86.7 percent for Windows, according to recent data from the Eclipse Foundation.

Given that Eclipse and Linux are among the best-known open source efforts, it’s ironic that to date there is so little synergy between them. SD Times asked a handful of Eclipse and Linux experts why this is so, and also got them to weigh in on where future Eclipse/Linux growth is likely to come from.

One reason for the relative lack of Eclipse tools for Linux is that traditional Linux developers don’t want them, the experts said. These developers have long worked with command-line offerings, and they aren’t inclined to make the leap to an IDE, the experts said. As new, younger Linux developers—brought up on IDEs—emerge from colleges and universities, they are expected to embrace Eclipse. But in order to attract and retain these younger developers, Eclipse must be fine-tuned to work better with each of the different Linux distributions, the experts said.

Eclipse is expected to boost Linux development overall, but growth won’t come from native Linux development per se. Instead, it will likely result from the use of Eclipse as a cross-platform development environment, where an application can be written without hard-coding it to any one operating system, the experts said.

“That’s good for Linux,” said IBM open source and Linux marketing strategy manager Adam Jollans. “Cross-platform makes it easy and cost-effective for ISVs and other developers to target Linux and Mac OS in addition to Windows.” Hammond agreed that the use of Eclipse for cross-platform development is where future Linux growth lies. “The important thing is that Eclipse become a good environment for targeting Linux.”
The New Linux Developer

Long interesting to the very technically proficient, Linux must begin appealing to a broader pool of Linux developers, said Eclipse Foundation director Mike Milinkovich. “To be completely honest, hard-core developers aren’t going to use Eclipse.” They have relied on command-line tools such as the text editors Emacs and vi for years and years, and those tools are ingrained in their culture, he said. “But having modern tools like Eclipse is an important enabler for the future growth of Linux.”

Hammond agreed that vi and Emacs diehards don’t use IDEs, but added, “Even the most talented among us age. The number of developers skilled in command-line tools will decline, and as new committers come on board, there will be a changing of the guard.”

Addressing the needs of that new guard is what Novell senior software engineer Matt Ryan had in mind when he wrote the proposal for Eclipse on Linux, a project adopted by the Eclipse Foundation in December 2006. “Eclipse hasn’t enjoyed the type of success on the Linux platform that one might expect,” Ryan noted in the proposal. “The open source heritage of both Eclipse and Linux would lead one to assume that Eclipse would be highly successful on Linux, but [that hasn’t happened].”

Eclipse on Linux (also known as the Linux Distros project) aims to change that by promoting the adoption of Eclipse as an application development environment for Linux. Eclipse is included in all of the available Linux distributions today, noted Milinkovich.

That’s a step in right in the right direction, but isn’t enough to get most next-generation Linux developers to start using Eclipse, Ryan told SD Times. These younger developers have a different mindset than their predecessors, he said. “They see Linux as a strategic platform for conducting business.” And in order to use it effectively within Eclipse, they need some help, he added. “They want a version of Eclipse that’s packaged, tested and [sealed with] a stamp of approval for the Linux distribution they are using.”

The problem isn’t that Eclipse doesn’t run on Linux—it actually runs well, said Ryan. The issues that arise have to do with how Eclipse is installed on the developer’s system, and how it is managed once it is installed.

“Eclipse was built with the assumption you are using a single-user system [such as Windows],” explained Red Hat senior software engineer Andrew Overholt, a key contributor to the Linux Distros project. Among the issues the project is addressing is a standard way of building applications from source code, and adapting the Eclipse update mechanism so that it works with the Linux multi-user system model, he said.

A key goal of the project is to fine-tune Eclipse for each Linux distribution, said Overholt, but he did not specify a time frame for completion. Forrester’s Hammond noted that, to date, Eclipse is packaged as part of only one Linux distribution: Red Hat-sponsored Fedora. Asked whether he expects use of Eclipse as a Linux development environment to grow, Hammond replied, “Yes—progress is steady but slow.”

[B]Take Notes, ISVs

Real progress won’t come from native Linux development in Eclipse. A more likely source of growth is the use of Eclipse as an underlying framework for applications software, not just development tools, such as those used for embedded projects. “Eclipse is emerging as a basis for applications,” said Milinkovich.

A case in point is the most recent version of Lotus Notes, IBM’s collaboration and messaging offering. “Notes 7.0 was hard-coded for Windows,” said IBM’s Jollans; a Mac OS X client was also available. But for the 8.0 release, IBM rebuilt Notes, taking advantage of Eclipse as the underlying framework, he said. This allowed IBM to unify developer efforts and deliver a consistent user experience.

“Notes 8 looks like Windows for the Windows version, and it looks like Linux for the Linux version,” Jollans noted, although the Linux version, like the earlier Mac OS clients, lacks the specialized features of the administrator and developer roles. A Notes 8 client for Mac OS X is planned as well, he said.

Jollans said IBM singled out Notes for a cross-platform development effort because the company wanted to prove that approach can work “even for an application as complex as Notes,” he said. “Notes is nontrivial. If it can work for Notes, it can work for other offerings.”

IBM believes that Eclipse-based development will convince ISVs to target more than one operating system, Jollans said. “Most ISVs aren’t going to develop a client application for Linux, when Windows has 80 to 90 percent of the market.” But the cross-platform approach lets them increase the size of the markets they serve, while also reducing the costs of developing for each market, he said.

Jollans acknowledged that some fine-tuning is required to produce versions for three different operating systems. “But it’s impressive to get the same environment on all three: Linux, Mac and Windows,” said Linux Foundation chief operating officer Dan Kohn. “It works exactly the same on three different platforms.”

Asked how important Eclipse is to the future of Linux, he said: “I focus on the cross-platform aspect of it. Eclipse is a greater indicator of where apps are headed.” Eclipse and Linux have a lot in common, he said. “They are both open source. If there is something you want [to develop], you don’t start over from scratch. You just write the new feature on top of what’s already there.”

SD Times