fosdemjavadevroom2015

33
1 Broadening JCP Program Participation JCP State of the Union & Progress Report Heather VanCura Starting at 14:30 FOSDEM 2015

Upload: heather-vancura

Post on 16-Jul-2015

63 views

Category:

Technology


0 download

TRANSCRIPT

1

Broadening JCP Program ParticipationJCP State of the Union &

Progress Report

Heather VanCura

Starting at 14:30

FOSDEM 2015

2

● The Java Community Process (JCP) is the open, inclusive process to

develop and revise Java technology specifications (JSRs), reference

implementations (RI), and technology compatibility kits (TCK).● In 2014 celebrated 15 year Anniversary!

● The JCP program now has over 800 Corporate, Individual and Java

User Group (JUG) members. ● Increase in Java User Group Members, and Corporate Members,

decline in Individual members (due to renewal efforts).

For the community, by the community

3

New Corporate Members 2014

C2B2

Caelum

Canoo AG

Cloudera

Consol GmbH

Dextra

Gradleware

Hazelcast

ICEsoft Technologies

innoQ,

Intalio

Irian Solutions GmbH

Jelastic

Kaazing Corporation

MicroDoc

MongoDB

oparco

Rakuten

Savoir Technologies

Stormpath

Summa Tech do Brasil

Terra Firma Engineering

TimeSys

Tomitribe

Webtide

Wombat Software

Vaadin

Vision Service Plan

ZEEF

4

JSRs

• More than 370 JSRs are in development in the JCP program;

~two thirds have reached Final Release.● Java EE 7 Final Release 2013.● Java SE 8 Final Release 2014.● Java ME 8 Final Release 2014.

• Active JSRs: 43 including 15 Newly filed JSRs. ● Java EE 8 JSRs filed and approved.● Java SE 9 JSRs.

– Java SE 9 Platform (JSR # TBD) not filed yet, butdiscussed at January EC Meeting.

– JSR 376, Java Platform Module System, filed andapproved.

● JEP 200, JEP 220.

5

Using the Process to change the Process

• We modify the Process (as defined in the JSPA and the

Process Document) by filing JSRs.

• The Executive Committee members form the Expert Group for

these JSRs.

• Process-change JSRs go through all of the same stages as

regular JSRs.

• The output is a new version of the Constitution.

• Since 2012 we have been working on a series of four JSRs,

collectively referred to as JCP.next, to reform the ourprocesses.

6

Changing the Constitution

7

Legal framework and governance

• The Java Specification Participation Agreement (JSPA)

• A legal contract between members and Oracle.

• Addresses Intellectual Property (IP) grants and the termsunder which the Spec, RI, and TCK must be licensed.

• http://www.jcp.org/aboutJava/communityprocess/JSPA2.pdf

.

• The Process Document

• Defines the governance of the organization.

• Defines the processes that are used to submit define, develop,review, approve, and maintain specifications.

• Defines the obligations to produce an RI and TCK.

• http://jcp.org/en/procedures/jcp2.

8

JCP.next.1 (JSR 348)

9

JSR 348, JCP 2.8

• This JSR implemented a number of relatively simple but

significant changes to make our processes more transparent

and to enable broader participation.

• Expert Groups must do their work in the open, using publicmailing-lists and public Issue Trackers.

• They must enable the public to observe and review theirwork, and must respond to public comments.

• The JSR was completed in October 2011, and defined version

2.8 of the Process Document.

• As a result we saw a significant increase in developer

participation in the JCP, primarily through Java User Groups

and the Adopt-a-JSR program.

10

The JSR development cycle

11

JCP.next.2 (JSR 355, EC Merge)

12

JSR 355, JCP 2.9

• The JCP used to have two Executive Committees: one for

Java ME and one for Java SE and EE combined.

• Because Java is One Platform and because we expect Java

ME and Java SE to converge over time, JSR 355 was

introduced to merge the two Executive Committees into one.

• This JSR reduced the total number of EC members from 32 to

25 while maintaining the 2:1 ratio of Ratified to Elected seats.

• It made no other significant changes to our processes.

• The JSR was completed and was implemented in 2012/2013.

– New members elected in 2014: Hazelcast, GeirMagnusson Jr and MicroDoc.

13

That was easy!

14

JCP.next.3 (JSR 358)

15

Modifying the JSPA

• The JSPA has not been significantly modified since 2002.

• Since then the organization and the environment in which we

operate have changed significantly.

• Most significantly, the widespread adoption of open-sourcelicensing and development practices.

• The document is long overdue for updating and cleanup.

• However, it is very complicated and difficult to understand.

• We must be very careful when making changes.

• Plus…

16

Now the lawyers are involved!

17

Why it matters

• The JSPA defines the way in which Intellectual Property (IP)

rights are granted and the terms under which the Spec, RI, and

TCK must be licensed.

• We must make sure that the technologies we incorporate into

Java are "safe" from an IP perspective, so that people can

implement them and use them with confidence.

18

JSR 358 goals

• Maintain compatibility guarantees.

• Embrace open-source licensing and development processes.

• Simplify IP-flow and licensing models.

• Enable even more openness, transparency, and participation.

19

JCP.next.4 (JSR 364)

20

JSR 364, Broadening JCP Membership

• This JSR was spun-off from JSR 355 in order to implement

membership-related changes more quickly.

• Goal: encourage more individuals to join and participate in the

JCP while ensuring that we have appropriate IP commitments

from all members.

• New Affiliate membership class for individuals with a much

simpler membership agreement.

• No lawyers and no employer approval required.

• New Partner membership class for Java User Groups that are

not legal entities.

• Free membership for corporations.

• In progress now – expected completion in 2015.

21

New Membership Classes

22

Follow us on java.net

• Of course, we do all our work in public.

• Start with our public java.net project.

• There you will find links to:

• The Observer mailing list (all Expert Group mail is copiedhere).

• The Issue Tracker.

• The Document Archive (our meeting minutes and workingdocuments are published here).

• Let us know what you think.

• Help us to do the right thing!

23

Results so far...

• JSR 348 introduced version 2.8 of the Process.

• JSR 355 introduced version 2.9 of the Process, merged the

two ECs into one EC.

• It is now easier for JCP members and the public to observe

and participate in the work of Expert Groups.

• Transparency is the default mode of operation.

• All new JSRs will be bound by the new rules.

• Existing JSRs voluntarily adopt them—almost all ActiveJSRs have.

• Now we need your participation!

24

25

• Public JSR schedule--current, and updated regularly.

• Public read and/or write page/wiki for the JSR.

• Public discussion for the work of the JSR (archived).

• Public feedback mechanism.

• Public issue tracker.

• One EC votes on all JSRs 3x in life of JSR with publicresults.

• All JSRs have 3 open public review periods (30 days).● Release early and often!

JCP is now more open

26

Putting the community back into the JCP

• No more barriers to participation.

• All members of the Java community can participate:

• In the implementation of the platform throughOpenJDK and GlassFish.

• In the evolution of the platform through the JCPand Adopt-a-JSR programs.

• If you care about the future of Java...participate!

27

Get involved!

28

What is it?

• A JUG-lead initiative to improve Java standards.

• Groups of JUG members work on JSRs.

• See http://java.net/projects/adoptajsr for full details.

29

JUGS Around the World!

30

● 30+ JUGS participating:

– South America: Campinas JUG (Brazil), ceJUG (Brazil),GOJava (Brazil), SouJava (Brazil), Brasilia, DF JUG(Brazil), GUJ Londrina (Brazil) Peru JUG, GuadalajaraJUG, GUJavaSC (Brazil).

– North America: Chicago JUG, Silicon Valley JUG,Houston JUG (USA), Toronto JUG (Canada).

– Europe: London Java Community (UK), BeJUG(Belgium), Bucharest, Bulgarian JUG, Madrid JUG(Spain), JUG Cologne (Germany), Istanbul JUG (Turkey).

– Asia: Indonesia JUG, JUG JogLoSemar (Indonesia),Hyderabad JUG (India), JUG Chennai (India).

– Africa & Middle East: EGJUG (Egypt), Morocco JUG,Faso JUG (Africa), Jozi JUG (South Africa), Mbale(Uganda).

Adopt-a-JSR Adopters

31

• Belgian JUG: JSR 356, Java API for WebSocket - Hack day;developed Tic-Tac-Toe game included in Java EE 7 SDK.

• Chennai JUG: JSR 338, Java Persistence 2.1, JSR 344, JSF 2.2,JSR 352, Batch, JSR 353, JSON, JSR 356, WebSocket - UrbanTraveler application; JSR 354, Money & Currency API.

• London Java Community: Java Test & Java Countdowninitiative, JSR 310, Date and Time API and JSR 335, LambdaExpressions; myriad OpenJDK hack days & talks organized.

• SouJava Brazil: JSRs 310, 339, 344, and other JSRs; talks, books,articles, classes, code/hack days:

● http://soujava.org.br/servicos/adopt-a-jsr/

.

Java SE & Java EE Adopters

.

32

Resources: find out more

•JCP & Adopt-a-JSR online meeting-materials and recordings

available: http://jcp.org/en/resources/multimedia

•Follow the JCP online: http://JCP.org

– Twitter @jcp_org

– blogs.oracle.com/jcp

– Facebook: Java Community Process

•Adopt-a-JSR online:http://adoptajsr.java.net.

– Twitter @adoptajsr

– Facebook: AdoptaJSR

[email protected] - the global mailing list

– IRC: #adoptajsr channel on irc.freenode.net

– GitHub: https://github.com/Adopt-a-JSR

33

thank you, dziekuje, tak, tack,

merci, grazie, gracias, danke,

obrigado, bedankt, kiitos, xie xie,

ありがとう .