Paul Buck is IBM’s director of Eclipse Development. We’re going to get
an introduction to Eclipse
this morning. IBM donated Eclipse to the open
source community in 2001, worth about $40 million.
The Eclipse challenge: tools from different companies don’t work well
together, and developers have better things to do than integrate tools. In
fact, tool vendors have better things to do that reinvent wheels.
Eclipse goals: be a highly extensible platform; out-of-box function and
quality to attract developers; get endorsement by some major tool vendors;
and be open source. The open source part was very carefully considered,
What is Eclipse? Platform centric, not tool centric. “An IDE for
anything, but for nothing in particular.” Teach the platform about your
problem, and the platform gains new capabilities.
Eclipse is a state of the art multi-platform Java IDE, but it’s much more
than that. The Java IDE is an example of how to create a great tool
on the Eclipse platform. In the Eclipse architecture, everything is a
plug-in. It’s not an IDE you can extend, it’s a basic platform (kernel)
where all functionality is a plug-in. The plug-in goals were to be easy to
develop (Eclipse has a plug-in development environment); to scale up to
hundreds of installed plug-ins (without slow start-up… the solution was
“lazy loading”); to be easy to discover, install, and update.
The Eclipse layers are: a Java VM at the bottom (any standard JVM), the
Eclipse platform on that; Java development tools above that; and other
things that weren’t up long enough for me to see above that.
The Eclipse platform has a core (the workspace); and a UI (workbench
including SWT (widget toolkit), and JFace). Other components provided by
plug-ins are Ant, Team, Help, Debug, and many others.
We’re seeing a nice demo of a simple (good!) Java project in Eclipse,
but the projector on our side of the room is slightly out of focus, and I
can’t make out details of the application. Then we have a simple C project,
and it works just as well with similar tools.
Eclipse is at release 2.1, and now they are working on release 3.0. They
plan to address the user experience (manage hundreds of plug-ins without
overwhelming the user); keep the UI responsive by making it easier to write
plug-ins that keep it responsive; make it more general (a rich client
platform), not just for IDEs, but for general applications via plug-ins;
support more members of the Java families such as JSP and SQLj, and non-Java
files that reference Java code.
The Eclipse.org board has 42 board members from all across the industry.
This is getting wide support, with 175 vendors commitment to using it.
It also has enormous grassroots enthusiasm
(3.1 million downloads the first year, more than 7 million so far). The 2.1
release saturated their T3 for 60 hours (1.2TB of Eclipse downloads).
They’re mirroring over 24 sites now, to avoid that happening again. There
are over 600 open source or freeware plug-ins already available (including a
very useful Tetris plug-in).
Eclipse Web Tools Platform Project. This is a brand new project
with the goal of building a complete, extensible platform for J2EE
development.
IBM is leveraging Eclipse technology into it’s WebSphere Studio product
family. In fact, the IBM WebSphere Studio Workbench is a supported Eclipse
platform.