Announcing the Mustang regressions challenge

; Date: Mon Jan 30 2006

Tags: Java

It is my pleasure to announce an exciting contest which offers you an opportunity to affect Java quality. To sweeten the pot we have some valuable prizes. In this contest we are saying:

Find a regression, and we'll fix it

We are challenging you, the Java developer community, to find functional regressions between J2SE 5.0 (Tiger) and Java SE 6 (Mustang). The contest runs from Jan 31 through March 31, 2006, with prizes to be awarded in mid-April. You will find details on the (web.archive.org) contest home page and FAQ. The complete entry requirements are in the (web.archive.org) official legal rules governing the contest. You can enter the contest using the contest entry form.

Prizes? There are five Ultra 20 workstations which will be awarded to the best regressions found during the contest. In addition all successful entrants, whose regression is entered into Suns internal database, will be given a t-shirt as our thanks to you for participating.

Why should you help Sun in improving Java? I've answered this on (web.archive.org) my blog recently, so let me repeat what I said there. Do this for yourself. Yes, we are offering valuable prizes as an enticement, but you will eventually want to run your application on Java SE 6.0 anyway. Why not try it out today and see how well it works? If there is a regression, then by all means tell us about it. There are many tests we cannot perform because we are not you, we do not have your application, nor do we have your environment. Thus it is impossible for us to perform the ultimate test of compatibility with your application. Only you can tell us that we've broken your application.

In this contest we are promising to fix or address all regressions. This actually is the commitment we make for every Java release. We strive to fix all known regressions before declaring a Java release "final". That word "known" is very important because if we don't know about a problem we can't fix it.

What is a regression? This contest does not cover all bugs, only those which are regressions. A regression occurs when some software function works correctly in an earlier version of the software, and works differently and incorrectly in a later version. This contest is focused on functional regressions between J2SE 5.0 and Java SE 6 (Mustang). "Functional regression" means differences in functional operations, such as API methods or supported tools included in the JDK.

Are we really promising to fix every regression? We intend to address the regressions that are submitted for this contest, and any others we find as part of Beta testing. We plan to fix as many regressions as possible, however we can't promise that every one will be fixed prior to Mustang general availability. What we can promise, is that we will decide on how to address the regressions we receive based on maximizing the overall quality and stability of Java SE 6. We will be assessing the impact and risk of every fix going into Mustang from this point on. Some regressions may be too risky to fix in the first release, or have limited practical impact and not be worth any potential destabilization. We may fix some regressions in subsequent updates as well. If, for some reason, we address a regression entry by not fixing it, we will definitely explain why.

Maintaining strict compatibility between Java releases is our goal. However in practice that could become "bug-for-bug compatibility" because strict compatibility means there is zero change in the behavior of an existing API method. The Java team sometimes forgoes bug-for-bug compatibility in order to improve Java, while at other times we maintain compatibility even in the face of bugs.

Source: (web.archive.org) weblogs.java.net

Comments

choosing the end time @ 1st April is indeed a fine idea ;-)

Posted by: alexlamsl on January 31, 2006 at 12:33 AM

It's clear from the terms and conditions that I can't submit regressions I've already posted (as they'll be considerde duplicates). Will already-posted regressions be listed in the same place and be given the same priority, even if ineligible for prizes?

Thanks, Chris

Posted by: chris_e_brown on January 31, 2006 at 01:28 AM

Chris, my apologies but the rules are clear about which submissions are entered in the contest. You wouldn't believe the kind of legal hassle it is to get a set of contest rules that work in as many countries as this contest goes to. - David

Posted by: robogeek on January 31, 2006 at 12:49 PM

David, no worries, wasn't meaning it like that. Was just wanting clarification. :-)

Posted by: chris_e_brown on January 31, 2006 at 01:32 PM

About the Author(s)

David Herron : David Herron is a writer and software engineer focusing on the wise use of technology. He is especially interested in clean energy technologies like solar power, wind power, and electric cars. David worked for nearly 30 years in Silicon Valley on software ranging from electronic mail systems, to video streaming, to the Java programming language, and has published several books on Node.js programming and electric vehicles.