Although the Eclipse Foundations move to release code from 10 of its top-level open-source projects simultaneously is no small feat, the process itself was rather smooth, said project leaders on many of the efforts.
On June 30 the Eclipse Foundation will ship 10 new or upgraded releases of key projects in a simultaneous release known as “Callisto.” The projects include the release of version 3.2 of the Eclipse Platform as well as new releases of the Eclipse BIRT (Business Intelligence and Reporting Tools) project, the Data Tools Platform, the Eclipse TPTP (Test and Performance Tools Platform) and the Eclipse Web Tools Platform project, among others.
Callisto, named for a moon of Jupiter, is the continuation of the model IBM set in motion five years ago when it poured $40 million worth of code into the open-source community to create an open-source development platform to compete with Microsofts development environment.
And although the stage was set for a move like Callisto, making it happen will likely go down as Eclipse executive director Mike Milinkovichs legacy.
“The Eclipse community and the original architects got it very right when they went with a modular architecture for Eclipse,” Milinkovich said in Ottawa.
Indeed, Milinkovich said the original motivation for Eclipse was to create “a coordinated release train” to make Eclipse a predictable supplier of technology and remove the latency in the delivery of different pieces of the broad Eclipse environment. Companies that rely on Eclipse as the basis for their products will know with certainty when and where to go to get it, he said.
Milinkovich said this marks the third year that the Eclipse project bits were finished by the end of June. So last year this time, the Eclipse planning council decided to shoot for this time to release 10 projects at once, Milinkovich said. Projects were invited to join the release train on a voluntary basis, he said.
Meanwhile, some observers give Eclipse high marks for achieving a coordinated release as an open-source entity, when commercial organizations struggle with getting code out the door.
“Callisto is an interesting effort in that its attempting to achieve what even tightly organized commercial vendors often struggle with: a coordinated, synchronized release,” said Stephen OGrady, an analyst with RedMonk, in Denver. “What Callisto will signify probably more than anything else is a level of project maturity. Rather than treating its various projects as unrelated entities, theyre looking to establish ties in release cycle.”
Kevin Haaland, project lead of the Eclipse Platform project and an engineer at IBM, in Armonk, N.Y., said “By having a coordinated release of multiple projects this will encourage the continued growth of the community and will enable people to continue to build on Eclipse.”
The community was key to the Callisto effort. That is part of the reason Eclipse welcomed Ward Cunningham to its ranks last year. Cunningham, known as father of the wiki, came to Eclipse from Microsoft and holds the title of director of committer community development at Eclipse. Cunningham works closely with Bjorn Freeman-Benson, technical director of open-source process and infrastructure at the Eclipse Foundation.
Freeman-Benson ran the process of coordinating all the Callisto projects to bring them in lock step toward a final release this week via weekly conference calls, mailing lists and chats. Project leads said the process was basically nonintrusive, with early calls being rather involved as the projects came to know one another better and later calls being brief—serving as status updates and bug reports.
“We lived on Bugzilla,” said John Graham, project lead of the Eclipse Data Tools Project platform and a software engineer at Sybase, in Dublin, Calif.
Moreover, “the process has been remarkably lightweight,” Haaland said.
However, some cynical observers note that although the Eclipse Foundation is launching 10 projects at once with Callisto, from that point on the projects are off on their own again.
Thats not entirely right, Eclipse officials said. Milinkovich said Eclipse plans to do annual simultaneous releases, but that individual projects may come out with more than one release in the interim.
In a blog post, Freeman-Benson said this is why the foundation decided to name the simultaneous release “Callisto” rather than Eclipse 3.2.
“Different projects have different release cycles,” Freeman-Benson said. “Some projects release once a year. Some release twice a year. Some release more than that. By forcing the projects into a standard numbering, we would be limiting these faster releasing projects to the slowest projects schedule.”
But what happens if a company wants to use a feature from an interim release between Callisto and next years annual release, for which Freeman-Benson has proposed the name “Europa”?
John Kellerman, manager of IBMs Eclipse strategy, in Raleigh, N.C., said that before Callisto, IBM had to internally do much the same process Callisto was designed to because “there are literally hundreds of IBM products based on Eclipse.”
However, Kellerman said IBM has been willing to use interim releases and hints at the power IBM was able to wield in the Eclipse organization. “Some of the projects had a greater number of IBM committers and we could cause them to align,” he said. “Others we might just take a snapshot [of the pre-release technology] and consider ourselves done, knowing there was some risk involved.”
Doug Schaefer, project lead of the C/C++ Development Tools project, said that project will benefit from the Callisto release train because in the past the project upgrades were not based on any regular schedule.
Tim Wagner, project lead of the Eclipse Web Tools Platform project, said Callisto is helpful to his company, Seattle-based BEA Systems, “because we dont have to worry about five different dates and releases” for the Eclipse projects.
Wagner said the next versions of BEAs WebLogic Studio and WebLogic Workshop will be based on Callisto.
Graham said that before Callisto, judging Eclipse releases was a “real guessing game, and that made it hard to plan products.”
Meanwhile, Wagner said the Callisto experience also led to some unintentional side effects, including improving Eclipse infrastructure such as the organizations update technology, and driving toward more user interface consistency among the projects.
Other “side effects” include what Graham referred to as “touch points” or areas where the various projects could better work together or integrate.
Richard Gronbeck, project lead for the Eclipse Graphical Modeling Framework project and an engineer at Borland Software, in Cupertino, Calif., called Callisto a “great unifier” for the organization. He said the goals for the move to Callisto and beyond are to “first align the dates [of releases], second to improve interoperability, and third to get tighter integration” among the projects.
“Releasing 10 projects that are all at different stages in their development sounds a bit risky, but for Catalyst, it reduces the amount of testing we need to perform,” said Tracy Ragan, chief executive of Chicago-based Catalyst Systems, an Eclipse member company. “In the past, we would need to download new versions of Eclipse each time a project was released. It got to where there was always something new we needed to test, review or just understand. With Callisto, it is a one time effort for all 10 of the projects.”