November/December 2020 issue of acmqueue The November/December 2020 issue of acmqueue is out now

Subscribers and ACM Professional members login here

  Download PDF version of this article PDF

Eclipse: A Platform Becomes an Open-Source Woodstock
Alexander Wolfe, Science Writer

Call it a platform. Call it a tool. Call it the hottest open-source software movement since Linux. All those descriptions currently surround Eclipse,1 the language-agnostic code base that’s billed as a “universal platform.”

According to its creators—who are developing a very un-Microsoft-like knack for issuing bland pronouncements that downplay the growing industry buzz surrounding Eclipse—it’s more precisely a metaplatform. That is, it’s a building tool out of which developers can create IDEs (integrated development environments), or indeed anything else they might desire.

“ Eclipse is common plumbing that everyone can build on,”2 says John Wiegand, Eclipse platform lead. “We think of it as a platform for tool integration.”

In practice, users coming upon Eclipse for the first time will tend to think of it as a Java IDE, since that’s the most mature implementation of the technology. (People think of Eclipse as a Java IDE because that’s the download that’s easiest to obtain, opines Wiegand.)

Equally important to its success is that users quickly notice Eclipse is free—a factor that has become a big draw as comparable IDEs regularly sell for at least $1,000. That’s probably the way IBM planned things when it decided to seed the platform in the software community.

As work on the software commenced in 1999, IBM began to dole out some $40 million in funding. IBM also spun off Eclipse as a stand-alone operation and offered up key personnel to staff the project. For one, platform lead Wiegand is officially an IBM employee, but he works on the Eclipse project full time. (Initially, 40 people were assigned to Eclipse; today, there are developer teams in Ottawa; Minneapolis; Research Triangle Park, N.C.; Zurich; Toronto; and St. Nazaire, France.)

The first fruits of the project, Eclipse 1.0, premiered in October 2001. The buzz reached major proportions when version 2.1 shipped in 2003. The Eclipse software development kit for 2.1 includes a full-featured Java IDE upgraded with significant improvements to editor and debugger. The SDK (Software Developer’s Kit) provides editors for Java files and for plug-in XML files. The 2.1 release also marked the debut of a Mac OS implementation of Eclipse. A multiplatform player, Eclipse is available in builds that run on, among others, Windows 98 and XP, the Mac OS, IBM’s AIX Unix, Sun’s Solaris 8, Hewlett-Packard’s HP/UX, and the Red Hat and SuSE versions of Linux.

With 2.1, the Eclipse organization announced the addition of five new corporate members, including mobile-phone powerhouse Ericsson, bringing the total number to 34. High-profile members include Fujitsu, Hitachi, database vendor Sybase, embedded software houses QNX and MontaVista, Hewlett-Packard, and enterprise code provider SAP, among others.

Now, work is well underway on the 3.0 upgrade, which is expected early next year (beta builds are already rolling out). “We’re pushing on to things like scalability—how to handle hundreds of plug-ins—and improved responsiveness,” says Wiegand.

Eclipse is also beginning to broaden out from its Java roots toward the widely used C++ language. In 2002, an Eclipse subgroup called the C/C++ development team (CDT) announced3 the availability of CDT 1.0. The release is a basic C/C++ development environment—complete with a debugger and GNU tools and compilers—that the team says is a big step toward its ultimate goal of a fully functional cross-platform C/C++ IDE.

Despite its IDE-centric associations, Weigand is adamant about wanting to make Eclipse attractive to developers who aren’t necessarily interested in an IDE. Rather, he likes to position Eclipse as a language-neutral base with a virtual machine on the bottom, upon which anyone can add software components. “There are many organizations building commercial projects on top of Eclipse, and there are more in the queue,” he says. IBM’s Webster Studio is the biggest example of an Eclipse-based commercial product. But the list of currently available plug-ins also includes Timestorm from Timesys, Borland’s Together Edition for Websphere Studio, Interstage from Fujitsu, and CodePro Studio from Instantiations.

Eclipse features a slick user interface, which may explain its growing appeal to commercial users as a base upon which to field plug-ins. It also has what’s widely acknowledged to be a powerful and well-documented back end, an additional impetus for development.

The commercial world aside, plug-ins seem to be the key reason Eclipse is catching fire with independent developers. Under the terms of the CPL (Common Public License),4 under which it’s released, developers are allowed to charge for any third-party extensions and plug-ins they create. To ease that task, Eclipse comes equipped with a built-in development environment for creating plug-ins. Here, Eclipse applies its Standard Widget Toolkit (SWT), an applications programming interface that’s tightly integrated with the platform’s underlying windowing system and user interface.

Small shops and individual programmers have taken the bait and are already packing the pipeline with plug-ins; for example, the homebrew site http://eclipse-plugins.2y.netlists nearly 400 new offerings.

As the IDE and numerous plug-ins continue to propel Eclipse in the software community, the project leadership has additional plans to broaden the platform’s reach. Leading that list is an effort to create a full-blown applications platform. Wiegand characterizes the goal as a “rich client platform.” Wiegand explains: “We want to take a subset of the Eclipse platform and make it available to build apps.”

Asked if this would be akin to a visual programming environment, Wiegand says, no, “we’re talking about an actual platform.” Since Eclipse itself runs on top of Windows, Unix, and other basic operating systems, what Wiegand envisions can be considered to be a platform shell. Nevertheless, it would be very useful—especially in the enterprise space—for mid-level developers trying to build end-user applications.

While Eclipse hasn’t come anywhere near hitting the peak of its popularity yet, there have been some criticisms. Chief among them has been the charge of “featuritis.” As a recent posting on,5 one of more than a dozen newsgroups devoted to the platform, put it: “Why is it that Eclipse and so many other IDEs try so hard to make sure that the developer can not have simplicity in their development environment?”

And it’s sometimes vexing, especially given the growing popularity of the effort, that the public faces of the Eclipse organization seem so intent on keeping its public pronouncements low-key and rather bland. On the other hand, perhaps such reticence, which harkens back to the days of the old-line Unix heads, is preferable to the hyperbole and vaporware promises we’ve become used to.

There’s been less restraint on, an influential blog that tracks the Java developer community. “Keep a close eye on Eclipse, it’s going to change the way we write code,”6 wrote software developer Cedric Beust in a posting earlier this year.

Perhaps Beust put it best when he tried to explain why Eclipse has gained so much software mindshare, yet can sometimes seem dull when discussed in strictly objective terms. “It’s hard to communicate why Eclipse feels so good to use, because a lot is due to little details that manifest themselves to you as you use the tool,” he wrote.


1. Eclipse: see

2. Wiegand, J. Personal Interview (Aug. 20, 2003).

3. Eclipse. delivers C/C++ development tools (Jan. 29, 2002);

4. The Open Source Initiative. CPL Version 1.0;

5. Eclipse Newsgroup (Sept. 2003 archive);

6. Beust, C. Serverside at JavaOne. The ServerSide Blog (sponsored by Sun Microsystems and the Middleware Co.); http://

ALEXANDER WOLFE received his electrical engineering degree from Cooper Union in New York City. A science writer based in Forest Hills, New York, he has contributed to IEEE Spectrum, EE Times, Embedded Systems Programming, and



Eclipse Web Site

Eclipse Newsgroups
(password required; available via free signup.)

Java Software Developer’s Blog
Sponsored by Sun Microsystems and the Middleware Co.

Eclipse Plug-Ins


The Java Developer’s Guide to Eclipse
Sherry Shavor, Jim D’Anjou, Scott Fairbrother, Dan Kehn, John Kellerman, and Pat McCarthy (Addison-Wesley, 2003)

Eclipse in Action: A Guide for Java Developers
David Gallardo, Ed Burnette, and Robert McGovern (Manning, 2003)

Eclipse: Step by Step
Joe Pluta (MC Press, 2003)


Originally published in Queue vol. 1, no. 8
see this item in the ACM Digital Library



Jessie Frazelle - Open-source Firmware
Open-source firmware can help bring computing to a more secure place by making the actions of firmware more visible and less likely to do harm. This article’s goal is to make readers feel empowered to demand more from vendors who can help drive this change.

Marshall Kirk McKusick, George V. Neville-Neil - Thread Scheduling in FreeBSD 5.2
A busy system makes thousands of scheduling decisions per second, so the speed with which scheduling decisions are made is critical to the performance of the system as a whole. This article - excerpted from the forthcoming book, “The Design and Implementation of the FreeBSD Operating System“ - uses the example of the open source FreeBSD system to help us understand thread scheduling. The original FreeBSD scheduler was designed in the 1980s for large uniprocessor systems. Although it continues to work well in that environment today, the new ULE scheduler was designed specifically to optimize multiprocessor and multithread environments. This article first studies the original FreeBSD scheduler, then describes the new ULE scheduler.

Bart Decrem - Desktop Linux: Where Art Thou?
Linux on the desktop has come a long way - and it’s been a roller-coaster ride. At the height of the dot-com boom, around the time of Red Hat’s initial public offering, people expected Linux to take off on the desktop in short order. A few years later, after the stock market crash and the failure of a couple of high-profile Linux companies, pundits were quick to proclaim the stillborn death of Linux on the desktop.

Jay Michaelson - There’s No Such Thing as a Free (Software) Lunch
The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software to make sure the software is free for all its users. So begins the GNU General Public License, or GPL, which has become the most widely used of open source software licenses. Freedom is the watchword; it’s no coincidence that the organization that wrote the GPL is called the Free Software Foundation and that open source developers everywhere proclaim, “Information wants to be free.”

© 2020 ACM, Inc. All Rights Reserved.