Life at Eclipse

Musings on the Eclipse Foundation, the community and the ecosystem

Archive for the ‘Foundation’ Category

Juno Performance

There has been a lot of conversation this past week about the state of Juno’s performance on the new Eclipse 4.2 platform. The original thread was kicked off by Thomas Hallgren, there’s been a flurry of comments on bug 385272, and a nice summary of the concerns in Andrey Loskutov’s blog.

I think it is apparent there are a lot of very valid concerns that will need to be addressed, and we as a community will need to pool our resources to ensure we succeed. However, there are two issues I’d like to address: 1) moving to a major new release is always hard, and 2) we need the community to help solve the problem.

Moving to a new major release

For a little historical perspective, anyone who was around when Eclipse 3.0 shipped in 2004 can likely tell you that moving to a major new release is never ever easy. It is absolutely impossible to do a major rewrite of a platform used by millions without pissing somebody off. Nor is it possible to achieve perfection the first time around. That is not said to dismiss any of the concerns that have been raised. We need to have the feedback, bugs and patches to move things forward. However, we do need to move forward.

My personal summary of where we’re at is that Juno is on 4.2, and it’s far too late to talk about switching the release train back to 3.8. Kepler is going to be based on 4.3. There will never be an Eclipse 3.9. Those decisions were made quite some time ago by the Eclipse PMC and the Planning Council, after long discussions about the pros and cons. That’s where we’re at. So if you want to help move Eclipse forward, please focus your energy on providing input, feedback, patches and tests on the Eclipse 4.x stream because that is unequivocally our future.

Significant community help is required

The performance test were turned off because the Eclipse platform team has a serious resource issue. The simple fact of the matter is that the Eclipse platform team is stretched well beyond what it can reasonably be expected to accomplish. This is not a new problem. It has been discussed in many forums for at least the past three or four years. Unfortunately, very few people or organizations have stepped up to make significant contributions. Perhaps this will serve as a catalyst for people to step forward to contribute more to the needs of the platform. Let me stress how important it is for this to happen.

There have already been a couple of very positive developments that have come out of this conversation. Google has stepped up and donated $20,000 towards the creation of a brand-new testing infrastructure for eclipse.org. A few people and companies have quietly approached us about where they can best put their resources to help. The entire staff of the Eclipse Foundation is going to pitch in to help resolve these issues as much as we can. However, there are thousands of companies and millions of developers that make use of Eclipse every day. We need more of these companies to come forward to start participating in the core Eclipse platform. Google’s contribution is a perfect example.

The Eclipse 4 platform has a large number of important new features and capabilities which are going to allow us to do many more cool things in the future. The Eclipse platform team has done a great job bringing it this far. It is not perfect and we have the SR1 release coming up in a couple of weeks that will address some known performance degradations and memory leaks. I expect we will continue to see more improvements in SR2 and Kepler. The critical issue is that the entire community needs to be part of the solution. Now is the time to step forward and give back to the Eclipse project that started it all.

Written by Mike Milinkovich

September 10, 2012 at 3:00 am

Posted in Foundation

ACM Recognizes Eclipse

This morning the Association for Computing Machinery (ACM) announced that Eclipse has been awarded the Software System Award. This is truly a prestigious honour. To put this into perspective, past winners of this award include systems such as Java, Apache, Mosaic, the World Wide Web, Smalltalk, and UNIX.

Awarded to an institution or individual(s) recognized for developing a software system that has had a lasting influence, reflected in contributions to concepts, in commercial acceptance, or both.

The names listed on the award are a who’s who of the original Eclipse development team from IBM who built Eclipse. They are: John Wiegand, Dave Thomson, Gregory Adams, Philippe Mulet, Julian Jones, John Duimovich, and Kevin Haaland; now at Oracle: Stephen Northover; and now at Microsoft: Erich Gamma. Congratulations to all of them for such a well-deserved recognition. But also congratulations to the whole team. Obviously, not every single contributor could be named, but this award is a recognition of what was achieved by all involved.

On a personal note, it is incredibly gratifying to me to see many of my former OTI colleagues recognized for their contributions to the field of computer science and to the industry as a whole. I still believe that OTI was one of the finest software engineering teams ever assembled. The experience of this Eclipse team was legion, with key architects and developers who had worked on systems such as Smalltalk, ENVY/Developer, Convergence, Taligent and VisualAge. This team had worked together successfully for years, and were able to bring all of that experience and wisdom to what became Eclipse.

Eclipse’s contributions to computing are important to recognize. In 1999-2001 when it was built and then released, the notion that you could build a general-purpose tooling platform that was uniformly modular throughout its entire architecture was revolutionary. In many ways, it still is today. The Eclipse plug-in model (later re-hosted on the OSGi standard) has enabled the broadest and most open tooling platform in the world. SWT proved to the world that you could actually build good-looking GUIs in Java in 2001, and compete head-to-head with Visual Studio on the Windows platform.

In terms of its industry impact, it is hard to over-state what Eclipse has accomplished since 2001. First of all, it was an important strategic move by IBM to promote the success of Java by consolidating Java tooling around an open, extensible and professional quality platform – something no other company was willing or capable of doing. Its importance as an endorsement for open source was incredibly valuable. It demonstrated that even large and conservative organizations saw the business value in forging open source platforms and communities. Today IBM includes Eclipse in over 500 shipping products. But Eclipse broke ground in other ways as well. To the best of my knowledge, Eclipse was the first open source project to consciously create an industry consortium and commercial ecosystem around an open source platform. We now take this model for granted, and new organizations such as OpenStack consciously emulate it. But it was ground-breaking at the time, and a key part of the industry-wide success of Eclipse.

With the exception of John Duimovich, none of the original team mentioned in the award are still directly involved in Eclipse. (And even John’s involvement as the Tools PMC leader is limited.) But Eclipse remains successful, vibrant and innovative. It is truly an industry-wide platform that is relied upon in diverse areas such as enterprise development, embedded software development, mobile and modeling. The original visionaries were the pioneers who launched Eclipse in 2001. Today, we have a community of over a thousand committers supported by over a hundred companies moving Eclipse forward, and that is truly a testament to the foundation laid by the team in 2001.

Written by Mike Milinkovich

April 26, 2012 at 8:57 am

Posted in Foundation

Voting is Open!

Voting for the Eclipse Foundation’s 2012 Board of Directors is now open. If you are eligible to vote, you should soon be receiving an email with your voting credentials. If you believe you are eligible, but do not receive credentials, please contact webmaster@eclipse.org.

Many thanks to the candidates who put their names forward for the positions available. There are a total of six elected positions available: three for the Committer representatives, and three for the Sustaining Member representatives. I know I say this every year, but these representatives are important! So if you are eligible to vote, please do so. Voting is open until 3:00pm Eastern on March 16, 2012.

The winners of the election will be announced at the Annual General Meeting of the Eclipse Foundation which will be held on Monday, March 26th at EclipseCon 2012.

Written by Mike Milinkovich

February 27, 2012 at 9:30 am

Posted in Foundation

It’s Going to be an Exciting Year

Welcome to 2012 folks, its going to be a busy and exciting year. There will be a number of important new projects, programs and initiatives across the Eclipse community. When we’re done Eclipse and the Eclipse Foundation is going to be quite a different – and even more interesting – place. So in no particular order, here is a sampling of some of the big things I see coming.

  • As of the Juno release, Eclipse 4 is going to be the base platform for the Eclipse ecosystem. This means that our download page will only have Eclipse 4.2-based packages. Eclipse 3.8 will also ship as part of the Juno release, but currently there are no 3.x releases planned after that. Although an enormous investment has gone into the backwards compatibility layer for Eclipse 4, it is obviously going to take testing and effort by the Eclipse projects and the many Eclipse adopters to migrate to Eclipse 4.2. So if you haven’t started testing with the Juno builds, now’s the time to start planning for it. Eclipse 4 is a complete re-write of the platform user interface, and brings a lot of value to the ecosystem, including a lot of improved APIs, more flexibility and a refreshed user interface. And its API is 100% binary compatible with the 3.x platform.
  • The migration of the Eclipse community to git is going to be a significant event during 2012. Shutting off CVS in December will be a major milestone. And we are almost done getting the Gerritt code review tool up and running for all Eclipse projects. To make all of this happen has been a ton of work by the webmaster team, the IP team, and you, the community. We’re hoping that using git will make it easier for our community to experiment with, and contribute back to Eclipse projects.
  • A Common Build Infrastructure for Eclipse projects is a new service we plan to provide for projects at Eclipse. It has long been a complaint that getting builds working and running reliably is one of the biggest PITAs in running a project. The goal of the CBI is to reduce that effort, and to provide a core hosted service on eclipse.org infrastructure that all of our projects can use. As part of the initial proof of concept, we’re tackling the toughest build of all: the Eclipse platform. Admittedly, CBI is going to take a lot of work, but we are actively recruiting for a full-time staff member to manage this, and to act as a resource for our project community. This is definitely one of the biggest and most exciting new services we’ve worked on for our committer community. So please get involved, and provide your feedback and your requirements.
  • We will also be launching a new service for members – providing Long Term Support for Eclipse releases. There is a fundamental mismatch between the maintenance window for Eclipse releases and the enterprise products that are built and ship on top. Eclipse release trains at least offer SR1 (September) and SR2 (February) maintenance releases on a regular basis. But an SR2 eight months after a major release is small solace to anyone with a requirement to offer support or maintenance on a product or application for five or more years (as many organizations do).

    As we are rolling this out, it is important to note that the Foundation is not going to be providing support or maintenance directly. Rather, we will work to connect organizations seeking support for Eclipse software with those offering it in order to cultivate a vibrant ecosystem. To help service providers be more efficient and effective, the Eclipse Foundation will provide the infrastructure for the code repositories, bug trackers, build farms, test farms, software signing, intellectual property management, and governance for managing the projects. We will be the trusted organization doing the drudge-work so that others do not have to. In other words, in classic Eclipse style, the Foundation will be acting as an enabler for the ecosystem.

  • Orion is going to ship its 1.0 release later in 2012. There is a ton of work still to do, but there is no doubt in my mind that Orion is an important new technology for the Eclipse community – a whole new tooling platform for the web, in the web.
  • EclipseCon is moving to Reston, Virginia, just outside Washington, DC. We hope to attract a lot of new attendees from the East Coast. In addition to the new location, we’re also adding an entirely new co-conference: Agile ALM Connect
  • And last but not least, we will be creating a number of new Industry Working Groups. IWGs such as Polarsys and M2M are going to be a large focus area for the Eclipse Foundation. But what is an IWG? Basically, they complement Eclipse open source projects with more support from the member companies that are interested in working on them and adopting them.

I see 2012 as a year of significant, and positive, change for the Eclipse community and the Eclipse Foundation. We are certainly not resting on our laurels! I encourage everyone to get involved and contribute to these new initiatives.

Written by Mike Milinkovich

January 6, 2012 at 6:00 am

Posted in Foundation, Open Source

Foundations Considered Useful

Blogosphere and twittersphere are both abuzz this week as a result of Mikeal Rogers’ “Apache Considered Harmful” post. I thought the article made a number of important points about how the software world is changing, and changing very rapidly. However, I think that follow-on articles such as “Has open source outgrown the Apache Way” are pushing the hypothesis a little too far. It’s one thing to point out the dynamism of GitHub, and the rise of social coding. But stretching that to the assertion that open source foundations no longer have a role is just wrong.

Disclaimer: I run an open source foundation, so obviously I have a vested interest in this debate.

First, I would like to point out that Eclipse is absolutely committed to moving to git as fast as we can get there. We’ve even announced a date by which we intend to shut down our previous standard SCM, CVS. At some point we also intend to discontinue Subversion support for Eclipse projects as well.

Many in the Eclipse community know that I was personally a skeptic about the value of adding git. I was worried that having three SCM systems at Eclipse was too many. In addition to the resources required to support three SCMs, this kind of variety can act as a barrier to entry for both contributors and adopters. If folks have to learn multiple SCMs to interact with Eclipse projects, that is a PITA for them. In short, I was resisting change.

Fortunately, there were many good folks within the Eclipse community that convinced me I was wrong. You know who you are. Thank you.

The argument that ultimately swayed me was that git brings a social dynamic to contribution that the other SCMs we used lack. Adopting git is a strategic attempt by the Eclipse Foundation at social engineering. If we can lower the barrier to contribution at Eclipse, then we will make our community stronger and more innovative. That is ultimately the reason why we’re doing this. This has required investments by our IT team, and as we adopt Gerrit we are modifying our processes for IP management as well. We know that you can both use git and do excellent IP management, because we are already doing exactly that.

Next up is to do more work with GitHub to make it even easier for the broader community to fork Eclipse projects and contribute code back. We are consciously embracing the whirlwind.

I would point out that the model we have at Eclipse where we have a professional staff and some resources at the Foundation makes this kind of change easier to do. Once we’ve made up our mind as a community to push in a new direction, we have the people and the resources to make it happen. We’re not always fast enough to please everyone, but we get there.

But is git and GitHub so powerful a force that the Eclipse Foundation should just roll over and die? I honestly don’t think so. There are some unique values that an open source foundation like Eclipse adds to the equation that are absolutely necessary.

The first thing to understand is that what we are trying to build at Eclipse are not simply open source projects, frameworks or code libraries. Our mission is to ship product-ready software platforms that major corporations and enterprises can safely use and distribute in their products. This involves a level of co-ordination and process that goes far beyond what you can do at GitHub.

A small sampling of the core value-add that happens within the Eclipse Foundation and its community would include:

  • IP management. Although we often get criticized for being overly focused on the topic, nobody does IP management better than Eclipse. Which is a huge part of fulfilling our mission of delivering product-ready software platforms. Yes, it’s a lot of work, but it is absolutely a core value, and one not easily replicated.
  • Predictability. The Eclipse community has shipped its major platform release on time to the day for eight years. Last year’s release was 46 MLOC, so we are talking about a non-trivial amount of code. The processes that we have in place to co-ordinate the activities and release engineering for 60+ projects absolutely require some amount of centralized support.
  • Branding and community. The Eclipse brand means something to people. Millions of developers around the world use Eclipse or Eclipse-based products every day. They have confidence in the software and the community that delivers it. Looking inside the community, there is definitely a pride and a sense of community that comes with being part of Eclipse. Anyone who has ever been to an EclipseCon has seen this firsthand.
  • Industry collaboration. Obviously GitHub has been wildly successful in fostering community-led open source. However, there are lots of instances where large and conservative corporations are looking at how to get involved in open source. In many cases, their business motivation is to collaborate with other industry players to create shared industry platforms. The kind of work that goes into facilitating these ventures goes far beyond picking a license and starting to hack some code. The processes that organizations like Eclipse and Apache bring to the table for project incubation, development processes, license management and IP contribution management are critical success factors.

At Eclipse we are trying to simultaneously embrace change, while delivering the core values and processes to fulfill our mission of delivering product-ready software platforms. I feel that overall we are doing a pretty good job, and offer more than enough unique value to sustain us for the very long term.

Written by Mike Milinkovich

November 25, 2011 at 5:00 am

Posted in Foundation, Open Source