Eclipse exec talks about .Net rivalry

Mike Milinkovich, Eclipse executive director, talks about the state of the company, dynamic languages and rivalries with Sun and Microsoft

The Eclipse Foundation (http://www.eclipse.org/) has established itself as a premier open source software tools project. The organization has gained support from vendors ranging from IBM (which helped found Eclipse in 2001) to Borland Software, BEA Systems, and seemingly every other major player in the software industry except Sun Microsystems and Microsoft. The EclipseWorld 2006 show last week afforded those using Eclipse technologies a chance to get updated on the latest developments at Eclipse. InfoWorld Editor-at-Large Paul Krill attended and interviewed Mike Milinkovich, Eclipse executive director, about the state of Eclipse and subjects ranging from dynamic languages to rivalries with Sun and Microsoft.

Where is Eclipse headed and what new technologies are on the horizon?

That's a open-ended question. When I look at the broad initiatives that are going on within Eclipse, a couple of things come to mind. First is continued growth and adoption around our Rich Client Platform, and that's something that we expect to see continued emphasis on. We're seeing more projects joining Eclipse around extending RCP in various areas, so that's good news for RCP. And as we talked about in our press release earlier this week, we're very pleasantly surprised about the growing adoption and awareness of RCP. A couple of other things in just sort of broad terms [include] more support for multiple languages. Eclipse has always been focused on being a platform for the development of language environments, and we're seeing some really interesting new developments, some of them within Eclipse and some of them in commercial products. In the commercial products space, Adobe is in the process of building and releasing its Flex Builder 2.0, which is an Eclipse-based development environment for ActionScript, which is their language for the Flex servers. And within Eclipse, in the next quarter we're planning on having the first release from the PHP IDE project, which we think is really exciting. PHP [Hypertext Preprocessor] is a really important language both for enterprise development but [also for] Web development in general, and having Eclipse tooling available for PHP is something that we're pretty excited about.

That leads right into my next question. Do you see more support for dynamic programming languages? You have PHP, you have the AJAX projects. Do you see more for some of the other languages that are out there? Ruby, Perl, Python?

Well, yes. Within the Eclipse ecosystem you can find Eclipse plug-ins and tooling for virtually every single dynamic language you can think of. There's Eclipse tools for Ruby, RadRails is a project... These are not projects at Eclipse, but they're open source projects which are based on Eclipse... RadRails is an open source project based on Eclipse for building an IDE for Rails, which is the Ruby framework. And you have PyDev for Python, which is a fairly popular. This is another example of a plug-in, which is available from an open source project outside of Eclipse but is based on Eclipse.... For virtually every dynamic language you can imagine, you can find Eclipse plug-ins to help enable development for it. And that really resonates back with what we were talking about previously about Eclipse being a platform for building development tools. That's really the fundamental mission of the Eclipse platform. So within Eclipse, as I mentioned, we have the PHP tools. We also have the AJAX Toolkit Framework, and so this provides sort of added compiled debug for JavaScripts running inside the browser, so it provides an AJAX developer a very nice development environment for use with Firefox in building AJAX applications. And there's quite a few different AJAX frameworks out there, and it supports Dojo, Open-Rico and Zimbra currently, and I think they're definitely planning on adding more in the future... And again, lastly I would mention the Rich AJAX Platform, which is a new project just getting started at Eclipse for providing an AJAX runtime that's based on the Eclipse component model for developers who want to use that style of development for building AJAX applications.

Which leads to my next question: Do you think there's kind of an overlap in some Eclipse projects? You have the Eclipse Rich AJAX Platform, there's also an AJAX Toolkit Framework. I know for the time being you have data tools in the Web tools Platform Project, you also have a separate Data Tools Platform Project. Do you think there's a lot of overlap going on or is it just based on which vendor proposes which project without too much thought given to consolidation?

It's a little bit of both. So within Eclipse as an open source community, we are willing to tolerate some overlap; let the projects work things out over time. And so far that's actually worked out pretty successfully. In the particular examples that you just raised, I don't see overlap. The AJAX Toolkit Framework and the Rich AJAX Platform, they don't overlap. They're two very different things. The first one, ATF, is focused on the needs of developers looking for tools for building AJAX applications. And the second one, RAP, is a runtime environment, a runtime framework, for building AJAX applications. And on the other example, with Web tools and data tools projects, initially there was some overlap, but that's actually probably almost a poster child for project cooperation at Eclipse, because as data tools came to be and started to work, the Web tools guys moved their data connection layer and adopted the technology coming from data tools.

Page Break

Is Eclipse de-emphasizing Java and refocusing on some of the other languages that we talked about? Is it focusing on some of the scripting languages as well as on .Net while de-emphasizing Java?

I wouldn't say we're de-emphasizing Java. As Eclipse is growing and there's more projects joining the fold, there are more resources to take on more languages and more platforms. Now, almost every Eclipse project writes its code in Java. We're clearly heavy users of Java. But in terms of Java being the only platform or language that we support within Eclipse, that's never been the vision for Eclipse. It's always been about supporting as many languages and as many platforms as we can find people willing to work on projects for.

There's been some talk in the industry that Java is kind of yesterday's technology. Sun wouldn't like to hear that, but do you see it that way at all?

I kind of frankly take that stuff with a grain of salt. You know, there's this constant hype machine within the high-tech industry that the next shiny new thing is going to be the grand vision that's going to do everything that has never been done before. What my observation is, is that Java is now getting to the point where it's clearly mature enough and stable enough to meet the needs of mainstream enterprise development and I think that's a good thing. Maturity isn't something to be ashamed of. It's something that the people that are talking about the shiny new things should treat with respect.

I guess there's kind of a trend toward putting the virtual machine on other languages.

Yes, and I think that's a great idea. Well, I think what you're saying is there's a trend toward opening up the JVMs (Java Virtual Machines) to make it easier to support other languages. And I think that's a great idea.

Why?

Because the programmers want more than one language, but there's so much work and talent that's been invested in the runtime infrastructure that's part of the Java platform, that reinventing all of that technology for another language doesn't make any sense. You want to have a particular problem, which can be expressed more easily in a language other than Java, that's great. But you don't want to throw the baby out with the bath water. I mean you still want to be able to use this highly-tuned and mature runtime platform from companies like BEA and IBM and JBoss and Oracle that have spent years perfecting this middleware infrastructure for Web applications. You don't want to throw that out just because you want [to] program in another language.

How much money would you estimate is being generated by Eclipse-based software or is it still the main attraction to Eclipse is it's all free?

MM: I wish we actually had good numbers on trying to estimate the size of the Eclipse ecosystem. I'm quite confident that it's in the billion-dollar range and probably more, but we just don't have the hard numbers in terms of sizing that market. Unfortunately we haven't been able to get an analyst to actually spend the time to quantify those numbers. But what you said about the attraction to Eclipse being free, the economics of the Eclipse model is a little bit different than that, because the Eclipse community as a whole is almost uniquely focused on enabling a commercially profitable ecosystem or market around the free platform. So yes, we do provide open source tools and frameworks from Eclipse and those are provided for free. But we definitely are motivated across the Eclipse ecosystem to see people and companies make money from the Eclipse platform.

What's going on with Eclipse as far as application lifecycle management? Some of that's on the agenda here, but could you maybe give a synopsis of what's going on there?

Sure. There's several different projects going on at Eclipse in the area. Serena is leading a project called ALF, Application Lifecycle Framework, and Compuware is leading a project called Corona. And these are both projects that are in fairly early days, they're both in incubation. But application lifecycle management is an area where we see definite growth at Eclipse, but it's going to take some time for these projects to mature and really hit their stride.

Page Break

What's the difference between Corona and ALF?

ALF is really focused on providing the technology for choreographing tools across multiple developers, and Corona is more focused on making it easier to integrate tools within a single workbench environment or within a single desktop environment. [There are subtle differences], but there actually are important differences for developers.

Like what?

You ask this every time we talk. [I am] just trying to think of a way to make it really simple to explain. I mean think if it as ALF is focused on choreographing tool integration across a whole team. Corona is more focused on making it easier for one developer in his particular environment to do his job.

This next question is about something you mentioned -- I guess it must have been last year -- at a conference in San Francisco. You talked about how you don't really need salespeople anymore. And I just met with a company (Genuitec) that's basing its technology on Eclipse and they don't have any salespeople. Do you see that as a trend where software companies, particularly open source software companies, don't have salespeople because they don't see the need? Do you see anything happening there?

I think that over time things are changing. What you're really talking about is what is the channel by which people acquire software? There's multiple ways you can acquire software. You can download it and use it, whether it's for free or for purchase. You can buy it packaged or you can deal with a direct sales force and deal with people. Historically, enterprise software has been sold through the direct sales force channel, and I do believe over time, we're starting to see success in open source software products in areas that have been traditionally the realm of the direct sales force. I'm thinking of things like SugarCRM and Compiere and open source products like this. And those environments or those products have very, very low cost of sales, so as customers get more used to that, to being successful with that kind of software acquisition, I think that over time, yes, there's going to be fewer and fewer software salesmen.

Here's the standard question that I kind of usually ask last. Is anything going on as far as Sun joining Eclipse or merging NetBeans and Eclipse?

Nope, absolutely not.

No talks in the last year, two years?

I bump into (Sun executive) Simon Phipps at conferences and have a drink with him once in a while....

There was one Java project that I guess Sun was working on with Eclipse.

There was a Sun committer working on -- it was actually on the base Eclipse platform to enable it for Solaris x86, as I recall correctly. So it was getting Eclipse running on one of their operating system platforms.

But there's no further movement since then?

No. And [in the] conversations I've had with Sun, they've made it pretty clear that they're not really interested in doing anything other than continuing to push their NetBeans strategy.

What do you think of their being two kind of rival camps? Is it good for competition?

Well, we're certainly not shy of competition, and frankly we're winning.

Page Break

They seem to say differently.

Oh, good for them. I got the numbers, they don't.

Who do you see as your main rival, NetBeans or Windows .Net?

We clearly and have always felt that Eclipse is about enabling competition with Microsoft.

How have you fared there?

Actually, we started five years ago and I would say that starting from zero, the growth of Eclipse over the past five years has been absolutely phenomenal. It's been wonderful to see the development community embrace Eclipse the way it has over the last five years.

Is there anything else you wanted to mention?

Actually I just want to probably just close with reinforcing about RCP. To date, Eclipse has always been very much focused on tooling and being a tools platform, but what we're I think really seeing now is RCP, Rich Client Platform, becoming a very important runtime infrastructure for application developers and ISVs who want to build multiplatform applications running on the desktop. And I think that's a very important niche for Eclipse and something that we expect to see continuing to grow.