Skip navigation
ANNOUNCEMENT: community.oracle.com is currently Read only due to planned upgrade until 28-Sep-2020 9:30 AM Pacific Time. Any changes made during Read only mode will be lost and will need to be re-entered when the application is back read/write.

The first JCP Executive Committee public meeting of 2012 took place on Tuesday, June 26. The meeting was open to any Java developer who wanted to attend, via Oracle's international phone network and the JCP's Webex account. I called in. I also tried the Webex option, but couldn't fully connect (I think due to my own system, which isn't yet fully operable after a recent disk crash).

Most of the meeting consisted of a presentation given by JCP Chair Patrick Curran. Occasionally, questions were raised by other members of the Executive Committee. Though the general audience was welcome to comment and ask questions, this in fact did not happen (as far as I could tell).

Patrick discussed the road ahead for the JCP, as represented by the three JCP.next JSRs: 348 (Towards a new version of the Java Community Process), 355 (JCP Executive Committee Merge), and 358 (A major revision of the Java Community Process). JSR 348, which was completed last October, mandated two public JCP EC meetings annually. That JSR, according to Patrick, addressed the "low-hanging fruit" -- the changes that could be made almost unilaterally by the JCP itself, without getting into legal complexities. Yet, even JCP 348 came close to bumping into legal issues. At the JCP's open meeting at JavaOne last year, there was considerable discussion about simplifying the document individuals or groups (like Java User Groups) must sign in order to become a JCP member.

Indeed, Patrick spent considerable time discussing the next version of the Java Specification Participation Agreement (pdf). For example, he said that the language relating to Java Technology Compatibility Kits(TCKs) will be clarified in the next version of the JSPA. Around this point in the meeting, someone spoke up (I believe an EC member), saying that "Oracle is incorrectly speaking for Sun..." The details are not something I know about, having viewed all of this history from the outside. But, it was a somewhat contentious moment -- which I think indicates how difficult it really is to evolve an organization such as the JCP so that it addresses the changing needs of developers who are working with changing customer requirements and changing underlying hardware.

At one point, Patrick talked about companies that try to "game" the system by having their employees become members of the JCP, but as individuals, not as representatives of their company. Any change in the JCP's rules can be perceived by corporate lawyers as benefiting or harming each company's interests. Patrick seems to anticipate corporate lawyers wrangling for perhaps the next three or four years before full agreement on the next version of the Java Community Process might be complete.

I myself (though some in the audience thought Patrick was overestimating) wonder if Patrick is being optimistic here. I mean, will we actually be lucky enough that the complete JCP reform Patrick and others envision will take only three or four years -- given that diverse corporate lawyers will be involved?

Patrick's presentation and related commentary ended about 40 minutes into the meeting. Then he opened the floor for questions. At first, the silence from the audience was quite impressive. Then several people like Martijn Verburg and Richard from the London Java Community broke the silence with some interesting questions and comments. The first was by Martijn, who stated that Java.net has some SEO issues regarding visibility in search engines. Patrick said he'd inform the Java.net team. [Aside: we at Java.net are aware of and have discussed certain Java.net SEO issues, which have been pointed out by Java.net Community leaders. Improving this, as well as our hardware infrastructure, is definitely on our "to do" list.]

After a while, Patrick tried to encourage non-EC members in the audience to participate, even volunteering: "I know you're not shy." But, nothing worked. So, finally, the meeting was closed.

Enticing non-JCP members to participate in public JCP EC meetings... How can we do it?

After the meeting, I thought about the fact that no one who's not a JCP member chose to ask a question or state a comment. And it struck me that today many people might be more comfortable with texting a question than with speaking out into a massive global conference call. So, I suggested to Patrick and Martijn that perhaps for the next public JCP EC meeting, the JCP should also utilize a JCP IRC channel (perhaps on Freenode). Then, as the meeting proceeded, people could text comments and questions, which would be relayed to the speakers.

Martijn said the Webex interface provided a window for texting. But I still think an IRC channel is a good idea. Webex is a pretty hefty app, whereas IRC is lightweight -- an advantage for people who live in places where connectivity is limited or of low bandwidth.

The next open JCP Executive Committee meeting will be in November, at a time of day that is better suited for participation by people in Asia. Let's think of some good questions for next time! Or, at least we might provide some comments on what we think about the JCP's long and arduous journey toward greater openness and transparency. I think it's great for Java as a platform, and for the Java/JVM developer community. What do you think?


Java.net Weblogs

Since my last blog post, Larry Fernandez and Rex Young have posted new java.net blogs:


Poll

Our current Java.net poll asks What's your view of the Adopt OpenJDK project?. Voting will be open until Friday, July 6.


Java News

Here are the stories we've recently featured in our Java news section:


Spotlights

Our latest Java.net Spotlight is Heather Van Cura's JCP 2012 Award Nominations are now open!:

The 10th JCP Annual Awards Nominations are now open until 16 July 2012. Submit nominations to pmo@jcp.org or use form here. The Java Community Process (JCP) program celebrates success. Members of the community nominate worthy participants, Spec Leads, and Java Specification Requests (JSRs) in order to cheer on the hard work and creativity that produces ground-breaking results for the community and industry in the Java Standard Edition (SE), Java Enterprise Edition (EE), or Java Micro Edition (ME) platforms...

Previously we featured Kelly O'Hair's JPRT: A Build & Test System:

A while back I did a little blogging on a system called JPRT, the hardware used and a summary on my java.net weblog. This is an update on the JPRT system. JPRT ("JDK Putback Reliablity Testing"...is a build and test system for the JDK, or any source base that has been configured for JPRT...

Articles

Our latest Java.net article is Ken Rimple's Spring Roo and WebFlow. The article is the first in a series that will explore how Spring Roo integrates (and doesn't) with various technologies. This first article discusses Roo and Spring Web Flow.


Subscriptions and Archives: You can subscribe to this blog using the java.net Editor's Blog Feed. You can also subscribe to the Java Today RSS feedand the java.net blogs feed. You can find historical archives of what has appeared the front page of Java.net in the java.net home page archive.

-- Kevin Farnham
Twitter: @kevin_farnham

The JCP Program Office announcedthat 2012's first public JCP Executive Committee meeting will take place on Tuesday, June 26, at 8:00 AM Pacific Daylight Time (15:00 UT). You can participate by dialing in to Oracle's global intercall teleconference network; or, you can attend the meeting using the JCP's Webex account.

If you've never heard of this type of global open JCP EC meeting, you're surely not alone. It's something new, mandated byJSR 348("Towards a new version of the Java Community Process"), which wasreleased in final form this past October, a few weeks after JavaOne. The requirement is that there will be two public JCP Executive Committee meetings each year. So, I'm thinking that, with JSR 348 having been enacted last fall, the upcoming June 26 meeting must be the first ever global public EC meeting.

I plan to attend myself, take lots of notes, then post a blog about the meeting later that day.

If you can't attend (due to time zones, work schedule, or whatever), but wish you could, that's not a huge problem: the meeting will be recorded, and later published at JCP.org, so you'll be able to listen in at your leisure.

The teleconference is scheduled to last an hour.


Java.net Weblogs

Since my last blog post, Mamadou Lamine Ba posted a new java.net blog:


Poll

Our current Java.net poll asks What's your view of the Adopt OpenJDK project?. Voting will be open until Friday, July 6.


Java News

Here are the stories we've recently featured in our Java news section:


Spotlights

Our latest Java.net Spotlight is James L. Weaver's Expressing the UI for Enterprise Applications with JavaFX 2.0 FXML:

Leverage the power of the FX Markup Language to define the UI for enterprise applications... One of the advantages of JavaFX 2.0 is that the code can be written in the Java language using mature and familiar tools. This article focuses on using the capabilities of FX Markup Language (FXML), a facility that comes with JavaFX 2.0, to quickly define the user interface for enterprise applications...

Articles

Our latest Java.net article is Ken Rimple's Spring Roo and WebFlow. The article is the first in a series that will explore how Spring Roo integrates (and doesn't) with various technologies. This first article discusses Roo and Spring Web Flow.


Subscriptions and Archives: You can subscribe to this blog using the java.net Editor's Blog Feed. You can also subscribe to the Java Today RSS feedand the java.net blogs feed. You can find historical archives of what has appeared the front page of Java.net in the java.net home page archive.

-- Kevin Farnham
Twitter: @kevin_farnham

Martijn Verburg, of the London Java Community, announced on the Java.net JUG-Leaders mailing list that the Adopt OpenJDK program is seeking Java User Groups for a new Adopt OpenJDK Bugathon pilot training program. Martijn said:

"We're looking for 3 JUGs to be part of the pilot for expanding the Adopt OpenJDK bugathons (hack days) to a global audience!"

If you're not familiar with Adopt OpenJDK, it's a new effort that seeks to expand involvement by the community in testing, debugging, developing, and documenting the OpenJDK. The idea is that individual Java User Groups (or non-JUG developers) select a particular task as their area of focus.

So, what's an "Adopt OpenJDK Bugathon"? It's basically a "hack day" where the participants find and document bugs in a particular area of the OpenJDK. Training JUG leaders to lead these events is what's currently in the works. Cecilia Borg posted some notes about the initial planning early last week.

Three Java User Groups will participate in the July Bugathon training event. In his messages to JUG leaders, Martijn said:

"the intention is to hold Bugathon Instructor training [with] the three chosen JUGs on July 11th at 1800-2000 CET (0900-1100 PST) - where we'll cover how to run one of the sessions and a section on how a patch goes through the review process in the Adopt OpenJDK programme and then the OpenJDK itself."

If this sounds like something your Java User Group would like to participate in, Martijn invites you to contact him directly (martijnverburg at gmail dot com), and he'll send you the dial-in details. In conclusion, Martijn notes:

"We're really excited about this opportunity for our members to work on Java itself, hope to see you on the call :-)"

Java.net Weblogs

Since my last blog post, several people have posted new java.net blogs:


Poll

Our current Java.net poll asks What new feature or improvement would you most like to see in Java DB?. Voting will be open until Friday, June 22.


Java News

Here are the stories we've recently featured in our Java news section:

The results of the latest completed Java.net poll indicate that, in general, developers consider the addition of Lambda Expressions (closures) to Java (which will happen in Java 8) to be a good idea. However, opinion is not universally in this direction. A total of 401 votes were cast in the poll. The exact question and results were:

Is adding Lambda Expressions (closures) to Java a good idea?

  • 48% (192 votes) - Of course! We've needed this for a long time!
  • 15% (59 votes) - Probably
  • 6% (25 votes) - Maybe
  • 2% (7 votes) - No, threads and the Fork/Join Framework are sufficient
  • 14% (55 votes) - No, because they'll be misapplied, complicating lots of code
  • 11% (43 votes) - I don't know
  • 5% (20 votes) - Other

First, my normal disclaimer: these are the results of a voluntary survey, not a scientific poll. Still, I think the results reasonably reflect the attitudes of Java developers. While about half of the voters think Lambda Expressions in Java have been long overdue, significant skepticism is also evident. Combining the "Probably," "Maybe," and "No" results yields 37% of developers expressing at least some doubt about whether adding closures to Java is a good idea.

Now, you can think adding a new feature to a language is a good idea even if you yourself are unlikely to use that feature frequently. But, to have doubts about whether adding a major new feature to a language is a good step -- that's an entirely different matter. In this poll, 14% actually believe the addition of Lambda Expressions will be, on balance, harmful, because some developers will apply the shiny, glitzy new capability in situations where there's no sensible reason for doing so.

Java Champion Kirk Pepperdine, a Java performance expert, has often stated that complex code can easily produce performance bottlenecks. For example, in this 2009 interview with Janice Heiss, Kirk states:

Brian Goetz and other influential developers have been saying for some time that if you write overly complex code, something's wrong.

I can cite example after example where the act of simplifying code allowed us to get the performance that we needed. Surprisingly enough, this principle actually goes beyond languages, so some of the biggest gains I've seen have been in applications where we simplified Smalltalk code.

In the Java language, it becomes doubly important because now we have runtime optimizations being applied to the code, and complex code confuses the optimizers. When you confuse the optimizers, they do not do a good job of optimizing, so you have a couple of problems with Java when you write complex code.

http://upload.wikimedia.org/wikipedia/commons/thumb/e/ea/AmdahlsLaw.svg/300px-AmdahlsLaw.svg.pngKirk also highlights the need to measure performance, not just guess. The entire purpose of Lambda Expressions is to enhance performance on multicore devices. But, if you don't understand Amdahl's Law, you can easily waste lots of development time and effort writing overly complex code that either minimally improves performance, or evendegrades overall performance. And, on top of it all, when the original developer leaves the company, successive developers who need to maintain or upgrade the code are faced with something that's basically unreadable, and readily susceptible to being broken by the tiniest modification.

This, I think, is the kind of thing that has many concerned about the Lambda Expressions enhancement that's coming in Java 8.

Still, what choice is there? The design of Java's Lambda Expressions will simplify the porting of legacy applications such that they can utilize multiple cores in modern devices. To not parallelize the key computational components in these applications will ultimately lead to their death due to horrid performance compared with competing apps written in other languages that support parallelism. It's the proverbial double-edged sword (something that "cuts both ways").

Lambda Expressions are a benefit (in the hands of excellent programmers), but also a liability (in the hands of less talented / less experienced developers). But, in my view, they are absolutely needed, because of the Multicore Challenge.

Opinions on closures in Java, circa 2006

Shortly after I posted this poll, my Java.net editorial predecessor and friend Chris Adamson tweeted about the fact that he ran an almost identical Java.net poll back in 2006! That poll asked "Would you like JDK 7 to support closures?" 41% said yes, 21% said no, 10% said they weren't sure, and 27% didn't know what a closure is. Again, while Java.net polls aren't scientific, I think this implies that even six years ago a lot of people had doubts about adding closures to Java.

More people today are in favor of having Lambda Expression support in Java. This makes sense given the explosion of multicore devices in the intervening years -- even down to quite small hand-held devices. And the multicore trend will likely accelerate in the coming years, rather than diminish, due to the already-in-progress demise of Moore's Law.

New poll: Java DB improvements/enhancements

Our new Java.net poll asks What new feature or improvement would you most like to see in Java DB?. Voting will be open until Friday, June 22.


Java.net Weblogs

Since my last blog post, several people have posted new java.net blogs:


Java News

Here are the stories we've recently featured in our Java news section:


Spotlights

Our latest Java.net Spotlight is Patrick Curran's JCP.next.3: time to get to work:

As I've previously reported in this blog, we planned three JSRs to improve the JCP

Some interesting announcements from the Java.net Java User Groups Communityhave been posted recently on the Java.net JUG-Leaders mailing list, related to upcoming JUG events, JUG activities, and more. In this blog, I highlight four recent announcements.

Cariri Java User Group

JUG Community leader John Yeary congratulated Alday Pinheiro and the Cariri Java Users Group (CaJUG) on having graduated from Java.net's JUG Incubator. You can visit CaJUG's Java.net page as well as their home site.

JCertif 2012 CfP

JUG-Africaleader Max Bonbhel announced that the JCertif 2012 Call for Papers is now open: "The next edition of JCertif is coming and will take place on September 03th-09th in Brazzaville, Congo. If you have an interesting presentation idea, we want to hear from you!"

Jax Innovation Awards: Vote Now!

Martijn Verburg, of the London Java Community, talked about "Another great opportunity to celebrate innovation and achievement in our communities," namely, the Jax Innovation Awards 2012. Martijn notes "The panel of judges (disclaimer: Including myself and a few other leaders on this list) has whittled down the nominations to a final shortlist of 5 in each category.

In February, I reported on the half-day Java 7 and JavaFX 2.0 Virtual Developer Day that I had attended online earlier that day. The sessions from the online mini-conference are now available for download on demand.

The screenshot below is one of several I captured as I was attending Virtual Developer Day sessions. The session section of the screen showed slides, and the audio was the presenter's commentary related to the slides. In this regard, attending the Virtual Developer Day was similar to viewing a presentation on Parleys.com

There was, however, an important added benefit: since the event was taking place in real time, attendee interaction with the presenter was possible. As you can see on the right side of the screen, near the bottom, conference attendees could enter and submit text messages. Where appropriate, the moderator who was fielding the submitted texts organized them into questions that were relayed to the presenters as the session proceeded.

Experiencing the developer day live, I was impressed. I saw as many as 750 people connected to the sessions I attended, which were primarily the Java 7 sessions. Simon Ritter was the presenter for the Java 7 Technical Track. In my blog from that day, I noted:

Another thing that impressed me was the historical background that Simon brings into his discussions of new features in Java 7, and to JavaFX 2.0. He doesn't just state what's new, he goes back to how things were in the past, describes the problems that existed, then shows how the new language features solve the problem. The listener is left with a sense of the justification behind the latest Java 7 enhancements, the justifications for what's coming up in Java 8, the reasoning behind the abandonment of the JavaFX 1.3 scripting model and the redesign that led to JavaFX 2.0, etc.

If you weren't able to attend the Java 7 and JavaFX 2.0 Virtual Developer Days when they occurred, your opportunity to experience these excellent sessions on demand has arrived!


Java.net Weblogs

Since my last blog post, Larry Fernandez and Cay Horstmann have posted new java.net blogs:


Poll

Our current Java.net poll asks Is adding Lambda Expressions (closures) to Java a good idea?. Voting will be open until Friday, June 8.


Java News

Here are the stories we've recently featured in our Java news section:

Filter Blog

By date: