Diversity in Action – #OpenJDK PowerPC ports proposed by SAP and IBM

Volker Simonis, from SAP, posted to the OpenJDK-Discuss mailing list yesterday a proposal to start a project for PowerPC ports (AIX/Linux) in OpenJDK, driven jointly with IBM.  I think the technical and community benefits of this are self evident – but I want to highlight a side point.

This is a great example of diversity in action.  I am not a fan of diversity for the sake of it, but I am a fan of diversity that happens naturally as a symptom of a healthy ecosystem.  I believe that healthy ecosystems have three characteristics: Productivity, Robustness and Niche Creation – and in many ways, this project is an example of all three.  For more on this area from an academic perspective, check out the reference in a blog I wrote back in 2006 (and don’t be cheap, the $6 for the references paper is worth it :P)

Hopefully we will continue to see more of this.  One of the risks, though, is that we need to push harder on the infra.  We’re well aware of some of the areas we need to catch up (i.e., bug db), and have a wish list a mile long.

– Don


Posted in Uncategorized | 1 Comment

JavaOne Community Keynote CFP

The JavaOne 2012 Call For Papers is now open, through April 9, 2012.  Submit your papers now!

If you saw the the closing keynote of 2011, you may recall that Sharat and I took the liberty of deciding on the spot that we would have an open call for a great community keynote.  That idea has been followed through, and you’ll notice in this years CFP:

  • Community Keynote: New for this year! A 60-minute keynote session showcasing an innovative and imaginative application of Java that demonstrates your cleverness and vision and that can spark the imagination of the larger Java community.

We need your help to find potential speakers, topics and fun things to include, and then submitting those ideas.  Let your imaginations run wild.  We have an hour set aside, but can be flexible with how things are structured within the hour.  Maybe we have some shorter keynotes on various topics, run with a theme, run some amazing demos, or perhaps we just find a single cool speaker and turn them loose for an hour.

YOU decide!

– Don

Posted in Misc | 2 Comments

EOL’ing a version of Java Is a Process, Not an Event

As the relatively “new guy” to the Java SE PM team, I’m still finding my way around and learning lots as we go through various milestones after the Java SE 7 launch, and move onwards to Java 8.  The recent update to the Java 6 public “End Of Life” date was pretty interesting to me, so I thought I’d share some of the more pedantic semantics, for those of you who might care.

The first thing to note is that EOL means end of public life.  The version will still exist and be supported for many additional years, just not in the public.  As with most free software, whether commercially licensed or Open Source, usually only one or two major streams are maintained – in the public – at a time.  It’s a simple function of maintenance costs.  It’s not reasonable to resource free ongoing development of five+ major release streams.  For those who cannot keep up with current releases, and have a need for longer term support, paid options are available to defray the ongoing costs. It would also be confusing to end users trying to figure out which of 5 available versions to choose between.  It’s confusing enough when there are 2!

Next, the EOL is not so much an single moment “event”, as it is a longer term process. When version X of Java is EOL’d in favor of version Y, the following process is what generally happens:
– Future notice is given to the community. As summarized in Henriks blog, a public EOL can be expected as soon as the latest of: 3 years after a major release; 1 year after a subsequent major release; 6 months after the subsequent major release is set as the default JRE on java.com.

– At some point after the above criteria are met, a final public release of version X is made available.

– The EOL version is still made available for download for at least a couple of months, after which it becomes archived.  “Archived” means it’s still available, but usually only meant for developers that want to debug some old code, but is not suitable for general usage as it’s no longer publicly patched.

So while we might state a particular moment as the “EOL” of a major release, it is likely still to be publicly available (and the most current update available) for a period of time thereafter.

– Don

Posted in Java SE | 11 Comments

Updated OpenJDK Trademark License

The OpenJDK Trademark License has been updated.  It adds JDK 7 and JDK 8 to the coverage.  A couple sections have also been expanded to help address some questions and scenarios from the community over the past couple years.

Otherwise, it is substantially similar and remarkably boring to non-legal folks.

– Don

Posted in OpenJDK | Leave a comment

Swapping the Java SE Eval License

At some point in the next week or two, we’re going to be changing the Java SE eval license (meaning, the license people accept prior to downloading beta/pre-production/early access builds of Oracle’s Java SE binaries) from this Oracle “pre production” license, to a standard OTN “Early Access” license.

We’d like to do this simply because it’s silly to have various licenses floating around that all basically say the same thing.  There’s no need for a vanity pre-production license.

I’ve stared at these two licenses until my eyes have bled, and can’t see any fundamental difference between the two.  They are both very restrictive (as you would expect in a pre-production / EA license), and both seem to cover the same highlights.  I’ve bounced it off a few people and there’s agreement that it’s not a big deal.

Maybe I’m being paranoid, but I thought I’d ask – if you’re a user of early builds of Java SE binaries, do you see any issues with making this switch that I can try to address in advance?

– Don

Posted in Misc | 5 Comments

OpenJDK Community TCK License for Java SE 7 Available

Apologies to those who had to wait patiently for this.  The OCTLA for Java SE 7 is now posted on the OpenJDK Legal page.  The version for Java SE 7 is fundamentally the same as was for Java SE 6 with a few changes (mostly for clarification purposes related to FAQ’s from the SE 6 version).  In particular, there are more details in the confidential information section clarifying some common use cases.

– Don

Posted in OpenJDK | 1 Comment

55 New Things in Java 7

At EclipseCon Europe 2011 today, I presented a talk highlighting 55 New Features in Java 7.  I proposed this session because of a good ribbing from some friends that “Java 7 only had a couple new things”, yet I know the actual change set is much more substantial.  So, I had 55 minutes and (more or less) took a minute to introduce 55 new things.  I’m glad we did this talk, as there were almost 150 people in attendance!

You can see the slide by clicking the link above.  You should know that much of the information came from the Java 7 Adoption Guide produced by our tireless documentation team.  You can look there for more information on those, and many other new features.

If you happen to still be at EclipseCon and reading this, please don’t forget to drop by the booth and pick up your free Duke Plushie Keyring!

– Don


Posted in Uncategorized | 2 Comments

“Community” mea culpa

It is interesting how many people online purport to speak for the “Community,” almost as many as purport to speak for God. I find myself asking: how do they know? The open source “Community” is by definition diverse. It includes students, consultants, industry employees, volunteers, professionals, shills for IBM, hobbyists, fanatics, cynics, superheros, and the silent online majority who never show up in Google quotients. There is a certain presumptiousness in speaking in the name of The Community. Speak for yourself, not for me, not for the community. I am part of the community. – Marc Fleury

Pretty much every time I utter the word “community” in a sentence, a part of my brain connects to an image of Marc Fleury shaking his head and making a “tsk tsk” noise.  I feel shame.

He’s right.  When stating things we think may not be universally popular, we tend to use plural phrases to represent the decision makers.  It’s a subconscious psychological trick, I suppose, to sidestep personal responsibility.

Sometimes I use the term “ecosystem” instead.  “Ecosystem”, I like to believe, implies a stronger sense of larger organizations, whereas “community” is more about individuals.  Occasionally, I’ll even find my self guilty of using the term “developers”, which, I suppose  implies an even stronger sense of individualism than “community”.

So, “Ecosystem”, “Community” and “Developers” – I’ve been finding myself overusing these terms lately when making less than universally popular decisions, and maybe even influencing others to do the same.  I’m going to endeavor again to be more careful when speaking about community, and doubly so when claiming to represent it.

– Don

Posted in Open Source | 1 Comment

The Importance of Twitter’s Participation in OpenJDK

Twitter has announced they’ve signed the Contributor Agreement for OpenJDK and plan to be active participants.  Also, they announced that they’ve joined the JCP.

As an ecosystem guy, I find the fact that Twitter signaled their participation to be very important.  It’s not because of their very cool and popular brand, or that they’re loaded with engineers with world class reputations, or that they’re running one of the fastest growing and massively scaled software projects on the planet (although, those all certainly are nice).  From my perspective, it’s the fact they’re not an ISV*.  They do not generate product revenue by selling software licenses.  If OpenJDK were just and only about the Oracle/IBM/SAP’s of the world, plus individuals who sell consultancy hours, or to further academic research, based on their close participation, then I think OpenJDK would eventually suffer for it.

In my mind, there are three waves of participation in open source projects.  First, it’s usually initiated by an ISV and other ISV’s in the same industry.  If the project is very niche, or doesn’t really flourish, that will be it.  But if successful, and if the project is platform/infrastructure oriented, we should expect to see a second wave of participants that are largely software companies, but where the software license is not the product itself.  Twitter would be a great example of this – Twitter is software, but the software license is not the product.  Beyond that, if the project continues to be successful we should see a third phase of participation from non-software companies.  Companies where the software is critical, but it’s not largely the product.  More consumer oriented organizations, where the software is a means to an end.  I’m thinking of banks, insurance companies, auto makers, etc.

If you look at the membership of the Eclipse Foundation you’ll see some recent new members like Airbus, BMW and Continental as examples of the Eclipse ecosystem being fully into Phase 3.

These non-ISV participants serve incredibly important roles.  Simply put, they add diversity to a project.  More specifically, they can best represent end users of the project because they are the end users of the project.  They’re the ones that feel the most pain of any missteps and being able to directly influence outcomes is a huge win for everyone.

If OpenJDK continues on it’s march, we should see more Twitter like participation, and hopefully even broader participation.

– Don

*ISV = “Independent Software Vendor”.  I.e., a company that received a significant percentage of their revenue from software licensing and related activities.

Posted in Uncategorized | 2 Comments

#javaone11 Live Poll Results

I thought I would quickly share the results of the live audience poll I ran during the Community Keynote this morning at JavaOne.  Thanks to everyone who voted!  Two quick analysis bits – I was surprised that only 9% of JavaOne attendees regularly attend JUGS.  I was expecting a much higher number.  Also, It’s great to see that almost three quarters of the audience is into Java 6 and beyond, I was expecting more people to report they’re still working in earlier versions.

Java Version you used most in the past month? (n=164)
Java 7 = 8%
Java 6 = 77%
Java 5 = 13%
Earlier = 2%

Do you attend JUGs? (n=241)
Monthly = 9%
Quarterly = 11%
Rarely = 17%
Never = 64%

Do you participate in OpenJDK? (n=271)
Use Only = 25%
Contribute = 4%
No OpenJDK = 71%

If you don’t go to JUGs, why not? (n=201)
None near me = 23%
Too Busy = 52%
Perceived Value = 24%

Pace of Moving Java Forward (n=213)
Go Faster = 64%
Current Pace OK = 33%
Go Slower = 3%

Posted in Uncategorized | 1 Comment