join the java evolution for victoria jug
Post on 11-Aug-2015
42 Views
Preview:
TRANSCRIPT
Copyright © 2014, Oracle and/or its aff iliates. All rights reserved. |
Join the Java Evolution for Victoria JUG
Java, JCP and Adopt-a-JSRHeather VanCura
@heathervc
http://www.slideshare.net/heathervc
Java Community Process
July 21, 2015
Heather VanCuraJava Community Process (JCP) Program
• Group Manager of the JCP Program Off ice • Leader of Global Adopt-a-JSR Programs, working w/JUG
leaders to participate in the JCP program• Hackergarten Organizer• Devoxx4Kids/Kids Coding Events Volunteer Instructor• Started with Sun Microsystems in 2000• Native Californian from San Diego• Personal Interests: Fashion, Girls & Women in Tech events,
Adventure, Traveling, Music, Books, Fitness/sports activities
like swimming, hiking, cycling, running, cross-f it, tennis,
volleyball and just hanging out at the beach :)
Bay Area, California - USA
• 9 Million Java developers worldwide• 3 Billion mobile phones run Java• #1 Choice for developers• #1 Development platform• 100% of Blu-Ray players include
Java• 97% of enterprise desktops run Java• 89% of desktops in USA run Java• 7 Billion Java Cards sold• 5 Billion Java Cards in use• 115 Million TV devices run Java
Ubiquitous
5
History
• 1995: Sun Microsystems develops Java.• 1999: Sun opens up the development process to its competitors,
creating the Java Community Process.• 2006: Sun open-sources Java SE and Java EE.• 2007: Sun goes into f inancial decline; Java stagnates.• 2010: Oracle acquires Sun and becomes the steward of Java.
9
Oracle infuses energy and funding into Java and the JCP, resulting in:
• New revisions of each of the three platforms: Java SE, Java ME, Java EE
• “JCP.Next” reforms to improve the way the Process operates
• Increased participation and new initiatives from Java User Groups
2011 - Present Day
10
Oracle as Java’s Steward
• Oracle recognizes the great value of Java – to itself as well as to its allies and competitors.
• The value is derived from the open, collaborative, standards-based process through which Java is developed and the vibrant developer community that this process fosters.– A proprietary platform could not have succeeded as Java has
– Java is everywhere
• Oracle’s support and promotion of Java benef its everyone.
11
The Java Community Process
• Java specif ications (JSRs) are developed collaboratively through an open, formal process similar to that used by other SDOs. All interested members of the Java Community may participate.
• Oracle’s competitors are active participants.– IBM, HP, and RedHat to name a few.
• The Open Source and developer communities are also represented.– The Eclipse Foundation, Java User Groups.
14
Executive Committee Members
ARM Azul Systems Hazelcast
Credit Suisse Eclipse Foundation Ericsson
Freescale Fujitsu Gemalto M2M
Goldman Sachs HP IBM
Intel Werner Keil London Java Community
Geir Magnusson MicroDoc Oracle
Red Hat SAP Software AG
SouJava TOTVS Twitter
V2COM
15
Open Source Implementations
• The Reference Implementations of the Java SE and Java EE platforms are also developed collaboratively and released under open-source licenses.– Java SE: OpenJDK
– Java EE: Project GlassFish
16
Why Participate
• Acquire knowledge: learn from experts, early access.• Make Java better: specif ications based on real world experience.• Build your resume: add experience and skill development.• Increase professional visibility: curriculum, articles, workshops,
presentations.• Become famous :): grow your reputation and network.• Be altruistic: Create the future Java.
19
Open Standards & Open Source
• Open source and open standards are complimentary. • Open standards implemented in open source makes it easier to
implement the standard and easier for developers to understand the technology.
• This will result in more implementations and greater adoption of the standard.
• An effective way to develop a standard is to start with an open source project that has demonstrated the need for standardization.
•
•
24
How do we do it?• Java Specif ication Requests (JSRs).
– A JSR is a single version of a Java specif ication.
• JSRs are led by a JCP member (the Spec Lead), with a group of interested members (the Expert Group) helping with the day-to-day decisions and work.– Any JCP member can submit and lead a JSR.
• Each Expert Group must deliver:– The Specif ication.
– A Reference Implementation (RI).
– A conformance test suite (Technology Compatibility Kit, or TCK).
25
Compatibility Triangle
Can you build animplementation?
Is the specificationunambiguous?
Is the TCK correct?Does the RI conform?
26
The JSR Development Cycle
• Includes formal public reviews and votes by the Executive Committee.
• See the Process Document for the details.
27
Who does what?• JCP Chair/PMO
– Leads the organization and manages day-to-day operations of the organization.
• Executive Committee– Votes on JSRs at def ined stages through the process.
– Def ines JCP governance, processes, and membership terms.
• Expert Groups– Create JSRs (write the spec, develop the RI and TCK.)
• Members– Review specs, may participate in Expert Groups, vote in EC elections.
29
Executive Committee
• The Executive Committee has 25 members – vote on JSRs, def ine JCP program governance.
• Oracle has a permanent seat.• 16 seats are Ratif ied (Oracle nominates candidates and the entire
JCP membership must approve them by voting).• The remaining 8 seats are Elected (any JCP member may nominate
themselves and members choose by voting).• Annual Elections: each year half of the members must stand for re-
election.
30
The Spec Lead
• The JCP member responsible developing a JSR. • Must deliver the Spec, RI, and TCK.• Oracle is the Spec Lead for the three existing Platforms: Java ME,
Java SE, and Java EE.
32
The Expert Group
• The Expert Group is recruited and led by the Spec Lead.• All members of the JCP are eligible to join. • Should represent all interested sectors of the Java community.• Works as a team to def ine the JSR and to develop the Spec.• Must operate transparently, so that JCP members and the public
can review and participate in its work.
33
The Membership
• Anyone can join.• Total membership is approximately 800.
– 10,000+ registered users at jcp.org.
• We used to charge commercial organizations $5K/year but now we are waiving membership fees for any class of member.
– https://jcp.org/en/participation/membership
34
Who Are The Members?
• Membership distribution by type:– 77% individual.
– 21% corporate.
– 2% non-prof it.
• Membership distribution by location:– 50% North America.
– 32% Europe and the Russian Federation.
– 13% Africa, Asia, and the Middle East.
– 5% South America.
35
Observer Suggestions
• Make Java EE 8 and Java SE 9 the most community driven platform to-date!
• Share ideas and feedback, possibly by entering issues in public issue trackers.
• Follow expert group discussions and chime in if needed.• Read early versions of specif ications and Javadocs.• Try writing applications using early builds of the reference
implementation.• Write or speak about the technology.• Encourage others to participate.
36
Legal Framework and Governance
• The Java Specif ication Participation Agreement (JSPA)– A legal contract between members and Oracle.
– http://www.jcp.org/aboutJava/communityprocess/JSPA2.pdf.
• The Process Document– Def ines the governance of the organization.
– http://jcp.org/en/procedures/jcp2.
38
Using the Process to Change the Process
● We modify the Process (as def ined in the JSPA and the Process Document) by f iling JSRs.
● The Chair&/or the PMO is the Spec Lead and the Executive Committee members form the Expert Group for these JSRs.
● Since 2011 we have been working on a series of four JSRs, collectively referred to as JCP.next, to reform the our processes.
39
JCP.next.3 (JSR 358)
● The JSPA has not been signif icantly modif ied since 2002. ● Since then the organization and the environment in which we
operate have changed signif icantly.● This JSR will modify the JSPA and the Process Document,
def ining new (and hopefully simpler) IPR and licensing policies.
43
JCP.next.4 (JSR 364)
● This JSR was spun-off from JSR 358 in order to implement membership-related changes more quickly.– Should be f inal in October 2015.
● Goal: Broadening JCP Participation. – Encourage more individuals to join and participate in the JCP
while ensuring that we have appropriate IP commitments.– New Associate membership class for individuals.● New Partner membership class for Java User Groups.● Free membership for corporations.
45
The JCP is more open than before
• 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 public results.• All JSRs have 3 open public review periods (30 days).
46
How will you Participate?
• As an Individual – OK.• As part of a team – better.• Work through your JUG or
employer.– Help each other– Teach other.– Work with each other.
Adopt-a-JSR
● A JUG-lead initiative to improve Java standards.
● Groups of JUG members work on JSRs.– See
http://java.net/projects/adoptajsr for full details.
● 30+ JUGS participating:
– South America: Campinas JUG (Brazil), ceJUG (Brazil), GOJava (Brazil),SouJava (Brazil), Brasilia, DF JUG (Brazil), GUJ Londrina (Brazil) PeruJUG, Guadalajara JUG, GUJavaSC (Brazil).
– North America: Chicago JUG, Silicon Valley JUG, Houston JUG (USA),Toronto JUG (Canada).
– Europe: London Java Community (UK), BeJUG (Belgium), Madrid JUG(Spain), JUG Cologne (Germany), Istanbul JUG (Turkey), Greece.
– Asia: Indonesia JUG, JUG JogLoSemar (Indonesia), Hyderabad JUG(India), JUG Chennai (India).
– Africa & Middle East: Congo, EGJUG (Egypt), Morocco JUG, Faso JUG(Africa), Jozi JUG (South Africa), Mbale (Uganda).
Java User Group Adopters
• BeJUG: JSR 356, Java API for WebSocket - Hack day in March 2013/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 - Urban Traveler application; JSR 354, Money & Currency API.
• London Java Community: JSR 310, Date and Time API and JSR 335, Lambda Expressions (Martijn Verburg); myriad hack days, talks and events organized!
• SouJava: JSRs 310, 339, 344, and other JSRs; talks, books, articles, classes, code dojos:
● http://soujava.org.br/servicos/adopt-a-jsr/
Adopt-a-JSR Use Cases of Adopters
.
Copyright © 2014, Oracle and/or its aff iliates. All rights reserved. |
Java EE 8 Community Survey EE 8 Community Survey
Glassfish.org/survey
New JSRshttps://jcp.org/en/jsr/stage?listBy=active
Recently submitted:Security (JSR 375)Java EE Management (JSR 373)JSON-P 1.1 (JSR 374)Java Module System (JSR 376)Desktop Application API (JSR 377)
Java EE 8 (JSR 366)CDI 2 (JSR 365)JSON-B (JSR 367)JMS 2.1 (JSR 368)Servlet 4 (JSR 369)JAX-RS 2.1 (JSR 370)MVC (JSR 371)JSF 2.3 (JSR 372)
• Join the JCP as a JUG.– Not required, but recommended. You need to do this in order to contribute code,
and you get voting rights and other benef its with this membership!
• Join the Adopt-a-JSR project:– http://java.net/projects/adoptajsr/pages/Home– Subscribe to members@adoptajsr.java.net (archive).
• Update the wiki to indicate your interest in a particular JSR and create a wiki page to provide updates on your plans/progress.
• Communicate directly with the Specif ication Lead/Expert Group (links on jcp.org) or the java.net users alias for the specif ication.
• Mail your JUG members to gather interest.• Outline what the JSR is and why the JUG should get involved; identify areas that you
want to work on; coordinate this with the Spec Lead • Share success on the wiki, list, twitter, etc.
How to get started on Adopt-a-JSR
How to get started - easy● Comment on the mailing lists; steer towards helpful conversations● Evangelize the JSR through social media, blogging or lightning talks.● Give a talk at your user group at events, or online.● Help with documentation.● Translate into your native language.● Help to maintain an FAQ/Wiki.● Improve project & JSR visibility.● Comment on the drafts and issue trackers.● Ensure that downloads, mailing lists, issue trackers are easy to f ind.
55
How to get started - moderate● Organize Hack days.● Test the early RI builds; use them to f ind pain points, report bugs,
suggest feature enhancements.● Help triage issues; reproduce issues, erase/merge duplicates, set
priorities/categories etc.● Give feedback on design; discuss issues and deliver feedback, think
about how you would use the JSR as a developer.● Help build the RI; get coding with the actual implementation of the spec
or build sample applications.● Help build the TCK; all implementations must pass the test suite – this
is a great way to gain test experience.
56
Copyright © 2014, Oracle and/or its aff iliates. All rights reserved. |
Participate in Hack Days EE 8 Community Survey
Guidelines for Feedback
● The Specif ication Lead and the Expert Group has the f inal decision on incorporating the feedback.
● For specif ications in Public Draft, new feature requests may not be considered for this release. For specif ications in Early Draft, new features may be accepted if they are within the existing scope.
● Multiple JUGs can and should collaborate on a particular JSR. There is always plenty of work and going through the material multiple times only makes it that more better.
● When communicating with the Expert Group on mailing lists, include 'adoptajsr' in the subject line.
● When f iling issues/bugs, use 'adoptajsr' .
58
How will this help our JUG?
● Receive attention from local industry.● Become more professional – helps focus your group efforts.● Attract more developers to your community.● Be part of global movement – collaborate with other JUGs.
59
How will this help your company?
● Tomitribe joined the JCP in 2014.● Value to business, developers and the community.● Participates on f ive Java EE Expert Groups:
– Java EE 8, CDI, JSON-B, JMS, Security JSRs.
61
Java.net wiki
You expanded wiki into eight languages: Arabic, Chinese, English, French, German,Portuguese, Spanish, Turkish...you choose who will translate next language!
JDK 9 Outreach https://wiki.openjdk.java.net/display/Adoption/JDK+9+Outreach#JDK9Outreach-Introduction
JSR example pageSR pageexample
List of Active JSRs (posting in last 12 months): http://jcp.org/en/jsr/all?status=Active&activeMonths=12 .
We want you!
• Follow the JCP online: http://JCP.org
– Join the JCP: https://jcp.org/en/participation/membership– Twitter @jcp_org #JCP – blogs.oracle.com/jcp– Facebook: Java Community Process
• Adopt-a-JSR online:http://adoptajsr.java.net. #adoptajsr
– members@adoptajsr.java.net - the global mailing list – IRC: #adoptajsr channel on irc.freenode.net– GitHub: https://github.com/Adopt-a-JSR
71
thank you, dziekuje, tak, tack, merci, grazie, gracias, danke, obrigado, bedankt,
kiitos, xie xie,ありがとう .'Java is as Java Does' video link:http://youtu.be/abSsrGD-SRw?list=LLtu8aQVpYKMUKIzXPNyE6Mgh t t p ://www.slid e sh ar e .n e t /d e labasse e /d e v o xx-uk -ad o p t ajsr
h t t p ://fr .slid e sh ar e .n e t /an t o in e sd /ad o p t -jsr -cd i-2 0h t t p ://www.slid e sh ar e .n e t /h e at h e r v c/ad o p t ajsr -fo r -jso n -p r o ce ssin g -1 1 -jsr -3 7 4h t t p ://www.slid e sh ar e .n e t /e d bur n s/jsf-2 3 -ad o p t ajsr -1 0 -m in ut e -in fo d e ckh t t p ://www.slid e sh ar e .n e t /e d bur n s/se r v le t -4 0 -ad o p t ajsr -1 0 -m in ut e -in fo d e ck
h t t p ://www.slid e sh ar e .n e t /R ich ar d W ar bur t o n /h o w-t o -r un -a-h ack d ay
h t t p ://www.slid e sh ar e .n e t /n e o m at r ix3 6 9 /h o w-is-jd k jv m -built -back -t h e n -an d -n o w
top related