In November 2001, IBM made its Java tools IDE and platform, developed for WebSphere Application Studio, available under an open source licence. It was the beginning of Eclipse, which now claims 65 per cent of the Java IDE market. But why was Eclipse founded and what has been its impact over a decade?
The Reg spoke to Mike Milinkovich, who has been executive director of the Eclipse Foundation since it was formed 2004. Prior to 2004, Eclipse was an open-source project sponsored by IBM and others, but not a full open-source Foundation with its own governance.
"Eclipse was developed by OTI, and started as an internal skunkworks within IBM," said Milinkovich. OTI stands for Object Technology International, a company specialising in Smalltalk and object-orientated development that was acquired by IBM in 1996.
Eclipse in 2001: delightfully responsive
It was a controversial release for several reasons. One was an argument about how to write cross-platform libraries for a graphical user interface. Sun's official solution for Java was Swing, known as a "lightweight" framework because each widget is custom-drawn by Java, which is good for cross-platform consistency but bad for native platform integration. OTI had long championed "heavyweight" frameworks, in which cross-platform code wraps native widgets so that applications have a true native look and feel.
Eclipse was written using the heavyweight Standard Widget Toolkit (SWT). "SWT was built because the Eclipse team wanted to build a platform that could compete with products from Microsoft and others, where underlying platform fidelity really mattered to their consumers," Milinkovich explained on an earlier occasion.
Sun disliked SWT, and the framework did not really catch on as an alternative to Swing, but as Milinkovich notes, "the competition forced Swing to get much better than it was in 2001."
The competition with Sun, which also had its own Netbeans Java IDE, led to rumours that the Eclipse name was some sort of pun about covering up the Sun. "It's an urban legend that never dies," says Milinkovich, denying it. "There were a number of people in the room when the name was picked. At the time, everything at IBM had to being with the letter E and we had a whiteboard... some people at Sun got really emotional."
'Little booby traps'
Others were suspicious of IBM's motives in launching Eclipse. Dale Fuller, then chief executive at Borland Software, told me Eclipse was full of "little booby traps" – code that happens only to work with IBM's WebSphere application server. He was right to be concerned, since Eclipse was one reason why his company's JBuilder IDE saw rapidly declining market share.
Ten years on and those arguments have been forgotten. Eclipse is widely used not just for Java but for C/C++, PHP, and for many platform-specific toolkits. "Pretty much all the embedded OSes use Eclipse, such as Android, Symbian " says Milinkovich.
"Modeling is another area. Eclipse is the center of gravity for modelling around the world. ALM [Application Lifecycle Maintenance] is another. Mylin has become the desktop integration point for ALM tools, because of Eclipse's dominance."