SlideShare una empresa de Scribd logo
1 de 53
JCP: How You Can Make a
    Positive Difference!
       Heather VanCura; heather@jcp.org
       Fabio Velloso; fabio@soujava.org.br

                  http://jcp.org
1
               Twitter @JCP_org
For the community, by the community
    • 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).
       ●
          The JCP program now has over 1,000 corporate and
          individual members.
       ●
          More than 350 Java technology specifications are in
          development in the JCP program; ~two thirds have
          reached Final Release.




2
Why participate?

    • As a corporation:
       •   To influence the technologies that drive your market.
       •   Because it's cheaper than developing everything yourself.
       •   To provide opportunities for your developers.
       •   To increase the size of your market.
       •   To gain a competitive advantage (ship new products faster.)
    • As an individual:
       • Good karma and fun!
       • Experience and skill development.
       • Fame and fortune – grow your reputation and network.



3
Levels of participation

    • Members.
       • Review specs, may participate in Expert Groups, vote in
        Executive Committee elections; flexible time commitment.
    • Expert Group members.
       • Create JSRs (write the spec, develop the RI and TCK);
        expert in field, high time commitment, help drive the
        direction of the JSR; moderate time commitment.
    • Specification Leads.
       • Responsible for leading the JSR & Expert Group (EG),
        delivery of spec, RI & TCK; a leading expert in area of
        JSR; considerable time commitment and recognition.
    • Executive Committee members.
       • Define JCP governance, processes, and contractual terms
        of membership. Vote on JSRs at defined stages through the
        process. Moderate time commitment.
4
Join the JCP

    • Join the JCP program as a corporation, non-profit,or
      individual.
        • Free for non-profits , Java User Groups, and individuals!
    • See http://jcp.org/en/participation/membership2
    • Register for an account on JCP.org.
    • Download, fill out, and scan, fax or mail the JSPA form to
      the JCP Program Office.




5
Putting the community back into the JCP
    • No more barriers to participation.
    • All members of the Java community can participate:
        • In the implemenation of the platform through OpenJDK and
          GlassFish.
        • In the evolution of the platform through the JCP.
    • If you care about the future of Java...participate!




6
JCP.next

    • A series of three JSRs:
    • JSR 348: Towards a new version of the Java Community
      Process completed in October 2011.
    • This JSR focused on relatively simple changes that we were able
         to implement within about six months.
    • JSR 355: Executive Committee Merge completed in August
      2012.
       • Implementation began in October 2012 and will be completed
         in October 2013.
    • JSR 358: A major revision of the Java Community Process is in
      progress now.
       • This JSR will implement more complex changes and will
         modify the JSPA as well as the Process Document.

7
JCP.next.1 (JSR 348)
    • The JSR was completed within 6 months and implemented
      a number of important changes JCP 2.8, implemented in
      October 2011 (~14 months ago).
    • Three themes aimed at:
         ●
           Transparency
         ●
           Participation
         ●
           Agility




8
JCP.next.2 (JSR 355)




9
JSR 355 (the EC merge)
     • Because Java is One Platform, and because we expect ME
       and SE to converge over time, JSR 355 was introduced to
       merge the two Executive Committees into one.
     • This JSR will reduce the number of EC members and keep the
       same ratio (2:1) of ratified and elected seats.
         • Oracle will give up one of its permanent seats.
         • No other member may hold more than one seat.
     • No other significant changes to our processes.




10
JCP.next.3 (JSR 358)
     • The last of the three JCP.next JSRs, JSR 358, is in process
       now.
     • This will tackle more complex issues such as licensing, IP
       flow, and governance, and will modify the JSPA.
     • This is a big deal (because all the lawyers will get
       involved.)
         – It will take a long time.




11
Legal framework and governance

      • Java Specification Participation Agreement (JSPA)
         • A legal contract between members and Oracle.
         • Addresses Intellectual Property (IP) grants and the terms
           under which the spec, RI, and TCK should 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.


12
Modifying the JSPA
     • The JSPA has not been significantly modified since 2002.
         (some minor changes were introduced in 2005.)
     •   Since then the organization and the environment in which we
         operate have changed significantly.
     •   The document is due for updating and clean up.
     •   However, it is extremely complex and difficult to understand.
     •   We must be very careful when making changes.
     •   Plus…




13
All the lawyers will get involved




14
Our shopping list
     •Intellectual Property (IP) flow.
     •Compatibility policy.
     •Licensing and open-source.
     •Independent implementations.
     •The role of the RI.
     •The role of individuals.
     •Transparency.
     •Refactoring the JSPA.
     •Fee structure.
     •And lots more (see the Issue Tracker for the full list.)


15
Why it matters
     • The JSPA is the foundation of the Java ecosystem.
     • It defines the way in which IP is granted and the terms under
       which the spec, RI, and TCK must be licensed.
     • The JSPA ensures:
        • that implementations of Java are compatible,
        • that the technologies we incorporate into Java are “safe”
          from an IP perspective (we know who owns them,)
        • that people can implement them and use them with
          confidence.




16
Follow us on java.net
     • As JSR 348 mandates, all our work is carried out in public.
     • Start with our public java.net project.
     • There you will find links to:
        • The Observer mailing list (all Expert Group mail is copied
          here.)
        • The Issue Tracker.
        • The Document Archive (meeting agendas and minutes, task
          lists, and working drafts are published here.)




17
Results...
     • JSR 348 introduced version 2.8 of the Process.
     • JSR 355 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 will be encouraged to voluntarily adopt them.
     • Now we need your participation!




18
JCP 2.8 progress report

     • JCP 2.8 went into effect in October 2011.
     • All JSRs started since then are run under this version of the
       Process.
     • Spec-Leads of in-flight JSRs are encouraged to voluntarily
       adopt the new Process.
        • On doing so they are required to operate transparently, and
          become subject to the new JSR deadlines.




19
JCP 2.8/2.9 adoption

     • There are 30 Active/In Progress JSRs.
     • 25 Active JSRs are operating under version 2.8 or above.
        • No Renewal Ballots yet.
     • 10 JSRs have been initiated under JCP 2.8 (1 was rejected.)
     • 17 JSRs have migrated to JCP 2.8.
     • 1 JSRs are in the process of migration to JCP 2.8.
     • 4 in-flight Active JSRs have not yet migrated.
        • Excluding those that have already posted a Final or
          Maintenance Release.
     • The PMO encourages Spec Leads to migrate at milestone
       postings.

20
New JCP 2.8 JSRs

     • JSR 352, Batch Applications for the Java Platform (IBM) – PR, November
         2012.
     •   JSR 353, Java API for JSON Processing (Oracle) – EDR, September 2012.
     •   JSR 354, Money and Currency API (Credit Suisse) – JSR Review, February
         2012.
     •   JSR 355, EC Merge (Oracle) – Final Release, August 2012.
     •   JSR 356, Java API for WebSocket (Oracle) – EDR, September 2012.
     •   JSR 358, A major revision of the Java Community Process (Oracle) – JSR
         Review, July 2012.
     •   JSR 359, SIP Servlet 2.0 (Oracle) – JSR Review, July 2012.
     •   JSR 360, Connected Limited Device Configuration 8 (Oracle) – JSR
         Review, October 2012.
     •   JSR 361, Java ME Embedded Profile (Oracle) – JSR Review, October
         2012.
21
Migrated JCP 2.8/2.9 JSRs (1)

     • JSR 172, J2ME Web Services Specification (Oracle) – MR, October
         2011.
     •   JSR 236, Concurrency Utilities for Java EE (Oracle) – EG Formation,
         migrated March 2012.
     •   JSR 338, Java Persistence 2.1 (Oracle) – EDR2, November 2012.
     •   JSR 339, JAX-RS 2.0: The Java API for RESTful Web Services
         (Oracle) – PR, October 2012.
     •   JSR 340, Java Servlet 3.1 Specification (Oracle) – EDR, August 2012.
     •   JSR 341, Expression Language 3.0 (Oracle) – PR, August 2012.
     •   JSR 343, Java Message Service 2.0 (Oracle) – EDR, March 2012.
     •   JSR 344, JavaServer Faces 2.2 (Oracle) – EDR, December 2011.
     •   JSR 345, Enterprise JavaBeans 3.2 (Oracle) – EDR, February 2012.


22
Migrated JCP 2.8/2.9 JSRs (2)

     • JSR 346, Contexts and Dependency Injection for Java EE 1.1
         (RedHat) – PR, November 2012.
     •   JSR 335, Lambda Expressions for the JavaProgramming Language
         (Oracle) – EDR 2, July 2012.
     •   JSR 337, Java SE 8 Release Contents (Oracle) – EG Formation,
         migrated September 2012.
     •   JSR 308, Annotations on Java Types (M. Ernst, Oracle) – EDR 2,
         February 2012.
     •   JSR 310, Date and Time API (S. Colebourne, M. Santos, Oracle) –
         EDR, September 2012.
     •   JSR 349, Bean Validation 1.1 (RedHat) – PR, October 2012, JCP 2.9
     •   JSR 350, Java State Management (Oracle) – JSR Review, Aug 2011.
     •   JSR 347, Data Grids for the Java Platform (RedHat) – JSR Review,
         April 2011.
23
JSRs in the process of migrating

     • JSR 342, Java Platform, Enterprise Edition 7 (Java EE 7)
         Specification (Oracle) – EDR2, November 2012
     •   JSR 107, JCACHE - Java Temporary Caching API (G Luck, Oracle)
         – EDR , October 2012.
     •   JSR 302, Safety Critical Java Technology (Open Group) – EDR,
         January 2011.
     •   JSR 333, Content Repository API for Java Technology 2.1 (Adobe) –
         EDR, September 2011.
     •   JSR 351, Java Identity API (Oracle) – JSR Review, September 2011.




24
Transparency checklist for new JSRs

     • Is the schedule for the JSR publicly available, current, and updated
           regularly?
     • Can the public read and/or write to a wiki for the JSR?
     • Is there a publicly accessible discussion board for the JSR that you
           read and respond to regularly?
     • Have you spoken at conferences and events about the JSR recently?
     • Are you using open-source processes for the development of the RI
           and/or the TCK?
     • What are the Terms of Use required to use the collaboration tools
           you have prepared to use with the Expert Group, so that
           prospective EG members can judge whether they are compatible
           with the JSPA?
     • Does the Community tab for my JSR have links to and information
           about all public communication mechanisms and sites for the
25
           development of my JSR?
Get involved!




26
How to participate?

• As an individual – OK.
• As part of a team –
  better.
• Work through your
  JUG.
   • Help each other.
   • Teach each other.
   • Work with each
      other.




27
JUG members
     BeJUG (Belgium)                    JUG-EG (Egypt)
     BreizhJUG (Brittany)               JUGF (Germany)
                                        JUG Indonesia
     Central Ohio JUG (USA)
                                        JUG-MK (Macedonia)
     Connecticut JUG (USA)
                                        JUG-RU (Russia)
     Detroit JUG (USA)                  JUG-USA
     Duchess (Women)                    London Java Community (UK)
     FASOJUG (Burkina Faso)             Malaysia-JUG
     Houston JUG (USA)                  MoroccoJUG
     iJUG e.V. (Germany)                Nashville JUG (United States)
     IndiJava (India)                   Oklahoma City JUG (USA)
     Japan JUG                          Rio JUG (Brazil)
     Java Student User Group (Vienna)   Riviera JUG (France)
                                        Ruhrjug (Germany)
     Java Web User Group (London)
                                        Silicon Valley JavaFX User Group
     Jozi JUG (South Africa)
                                           (USA)
     JUG-AFRICA                         SouJava (Brazil)
     JUG Chennai (India)                Utah JUG (USA)
28
                                        Vancouver Island JUG (Canada)
JUG representation on the EC
     • SouJava (Bruno Souza, Fabio Velloso, Yara Senger):
        • Nominated by Oracle to a ratified seat on the SE/EE EC in the
           May 2011 Special Election.
     • London Java Community (Ben Evans, Martijn Verburg, Trisha
       Gee):
         • Won an elected seat on the SE/EE EC in the May 2011 Special
           Election and re-elected in 2012.
     • Both have already made significant contributions to the work of
       the JCP.




29
Adopt a JSR!




          Thank you   and
30
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.




31
Why should JUGs get involved?

     • To move the entire Java ecosystem forward.
     • To speed up the standards-development process.
     • To become part of the solution as opposed to staying silent.
     • To be at the forefront of new technology.
     • To ensure that Java standards are practical and relevant for
       the real world as opposed to the ivory tower.
         • We need expert input from end-users and developers.
     • To ensure that Java standards are truly global.
         • We need expert input from non-English speakers.




32
How can you join?

     • Contact your local JUG leader, or...
     • Go to http://java.net/projects/adoptajsr and follow the
      simple set-up steps described there:
        • Join the Adopt-A-JSR project.
        • Sign up for the mailing list.




33
How can you help?

     • Help to moderate the mailing lists; steer towards
         helpful conversations
     •   Evangelize the JSR through social media, blogging
         or lightning talks.
          • Give a talk at your user group or online.
     •   Help with documentation.
          • Translate into your native language.
     •   Help to maintain the FAQ/Wiki.
     •   Improve project infrastructure and JSR visibility.
          • Help set up JSR hosting (java.net, GitHub, etc.)
          • Help with Search Engine Optimization of website.
          • Ensure that downloads, mailing lists, issue trackers
             are easy to find.
34
How else can you help?

     • Test the early RI builds; use them to find 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.
     •   Help build the TCK; all implementations must pass the
         test suite – this is a great way to gain test experience.


35
How to start an Adopt-A-JSR project

     • Start here
         http://java.net/projects/adoptajsr/pages/Home#Leading_an_Ad
         Also check out http://glassfish.org/adoptajsr page.
     •   Set up a wiki page to coordinate your activities e.g.
         http://java.net/projects/ljc-london-jug/pages/JSR-310.
     •   Link that into the matrix at
         http://java.net/projects/adoptajsr/
     •   Contact the Spec Lead & EG - find links on JSR pages e.g.
         http://jcp.org/en/jsr/detail?id=310
     •   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.
36
Adopt-a-JSR Transparency sub-project

     • Transparency sub-project of the Adopt-a-JSR program hosted
      on java.net.
        ●
           http://java.net/projects/jsr-transparency/pages/Home.
     • JUGs or individuals do transparency checks or audits on
       JSRs.
     • Provide qualitative and quantitative data to the community,
       Spec Leads, and the Program Office on the JSR’s compliance
       with the JCP’s transparency and participation requirements.
     • A matrix of results will be provided for each JSR actively
       operating under JCP 2.x.



37
Community-provided assessment

     • The Transparency sub-project will host an online form for
       your input in areas such as:
     • http://www.java.net/form/jcp-2829-transparency?force=408
        • The quality and utility of the public issue tracker.
        • How the Spec Lead and Expert Group communicate and
          interact on the JSR’s public mailing list. Are issues being
          resolved and addressed?
        • Whether the Expert Group represents all relevant sectors of
          the Java community,
        • Whether the Expert Group has published a draft of the JSR
          and whether this represents a convergence of competing
          implementations.


38
Participate in OpenJDK

     • Go to http://java.net/projects/adoptopenjdk/
     • Join the mailing list.
     • Join the IRC channel.
     • Or contact your local JUG leader.




39
Adopt a JSR
  How JUGs Can Help
SouJava's Adopt a JSR Effort
• Continuation of previous JCP work
  – Now with stronger collaboration with other JUGs



• 26 members at the Adopt a JSR list
  – SouJava + 4 JUGs represented
  – Plus 15 other directors involved on votes



• 389 subscribers on “padronização” mailing list
  – Standards and JCP news and discussions


• 17 “in progress” JSRs in the program
SouJava's JCP Participation
• Spec Lead
  – Michael Santos
     • JSR 310: Date and Time API [In Progress]


• Members of Expert Groups
  – Osvaldo Doederlein
     • JSR 176: J2SE 5.0 (Tiger) Release Contents [Final]
  – Michael Santos
     • JSR 349: Bean Validation 1.1 [In Progress]
  – Vinicius Senger and Yara Senger
     • JSR 314: JavaServer Faces 2.0 [Final]
  – Bruno Souza and Fábio Velloso
     • JSR 348: Towards a new version of the Java Community Process [Final]


• Member of the Executive Committee
A Community Effort!
• SouJava's participation is a multi-JUG effort
   – JavaBahia - Otávio Santana
   – JUG-MS - Jean Donato
   – GoJava – Marcelo Quinta, Raphael Adrien, Felipe Portes
   – JavaNoroeste – Thiago Vespa
   – BrasilJUGs – discussion with 20+ groups


• London Java Community
   – Original idea and continuous inspiration!
JCPAdmin Tool – JSR Reports
• Automatic info about JCP JSR status


• Sent weekly
  to mailing
  list and
  organizers


• Helps us
  prepare for
  votes and
  reviews
Challenges
• JSRs require diverse technical knowledge
  – Involve lots of people? Or focus on specific interest areas?
  – Some votes based more on transparency than technical quality



• Lack of knowledge of the JCP by Java developers
  – Hard to get up to speed
  – Guiding and setting next steps is a must



• Communication
  – Need good communications skills from participants
  – Need commitment from developers to share information
Why developers should
participate?
• Help define the future of Java
   – Create the future: best way to predict it



• Professional Visibility
   – Curriculum, articles, presentations



• Acquiring Knowledge
   – Learn from experts/networking, early access to docs & src code


• Competitive Advantage
   – First to market, early access to info, setting the standards
How JUGs Can Help?
• Best: help your members participate
  – JUGs can offer the support for their member to shine
  – Remove barriers, reach for help, deal with the “boring” parts


• Explain the JCP
  – Developers are used to the results, not the process
  – Basic concepts, steps to participate, where to find things


• Coach
  – A political process has its difficulties!
  – Standards are slow, your support keeps the excitement
How JUGs Can Help?
• Organize
  – Priorities, focus, admin activities, meetings, events



• Discuss
  – Group support dispel fears, create commitment
  – This is a long run effort, you need longevity


• Teach the technology
  – Explaining early specs spread the benefits to all your members
  – For most members, this is the value they will see
How JUGs Can Help?
• Evangelize
  – Promoting the specs in your JUG creates local celebrities
  – Promote the work of your observers, your JUG, the specs



• Set the expectations
  – Developers get frustrated when things go slow
  – Understand this is a medium / long term effort
  – Developers are sometimes afraid of not being “expert enough”
  – Coach them into starting as observers → grow to experts
It will help your JUG
• Receive attention from companies
  – Big vendors, local companies: show the value of all your efforts


• Become more professional
  – Needs organization and commitment, promotes focus


• Attract people
  – Developers working together: global impact, personal benefits


• Collaborate with other JUGs
  – Being part of something larger!
Thank you!
• SouJava
  – soujava.org.br
  – @soujava


• SouJava's Adopt-a-JSR page
  – soujava.org.br/servicos/adopt-a-jsr


• International JUGs Adopt-a-JSR page
  – jugs.java.net/pages/AdoptAJSR
Make the future Java!




52
Questions? Contact us:
     Heather VanCura; heather@jcp.org
     Fabio Velloso; fabio@soujava.org.br

                http://jcp.org
            Blogs.oracle.com/jcp
             Twitter @JCP_org

53

Más contenido relacionado

Similar a Participate @JavaOne Brazil 2012

Jcp user groupsummit-2013
Jcp user groupsummit-2013Jcp user groupsummit-2013
Jcp user groupsummit-2013Heather VanCura
 
JCP.Next Panel at JavaOne
JCP.Next Panel at JavaOneJCP.Next Panel at JavaOne
JCP.Next Panel at JavaOneHeather VanCura
 
Bringing Java into the Open - OSCON 2014
Bringing Java into the Open - OSCON 2014Bringing Java into the Open - OSCON 2014
Bringing Java into the Open - OSCON 2014Heather VanCura
 
How the JCP Works & Adopt-a-Program Update for Paraguay JUG
How the JCP Works & Adopt-a-Program Update for Paraguay JUGHow the JCP Works & Adopt-a-Program Update for Paraguay JUG
How the JCP Works & Adopt-a-Program Update for Paraguay JUGHeather VanCura
 
JCP Participation for ColumbiaJUG
JCP Participation for ColumbiaJUGJCP Participation for ColumbiaJUG
JCP Participation for ColumbiaJUGHeather VanCura
 
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...Jug Chennai
 
Drive yourself, community with adopts and jcp to professionalism
Drive yourself, community with adopts and jcp to professionalismDrive yourself, community with adopts and jcp to professionalism
Drive yourself, community with adopts and jcp to professionalismMohamed Taman
 
JCP How to Participate @ JavaOne Russia
JCP How to Participate @ JavaOne RussiaJCP How to Participate @ JavaOne Russia
JCP How to Participate @ JavaOne RussiaHeather VanCura
 
JCP & Adopt-a-JSR @ GeeCon
JCP & Adopt-a-JSR @ GeeConJCP & Adopt-a-JSR @ GeeCon
JCP & Adopt-a-JSR @ GeeConHeather VanCura
 
JavaOne Latin America Participate in Shaping Java's Future
JavaOne Latin America Participate in Shaping Java's Future JavaOne Latin America Participate in Shaping Java's Future
JavaOne Latin America Participate in Shaping Java's Future Heather VanCura
 
Join the Java Evolution Baltimore/DC/Philly
Join the Java Evolution Baltimore/DC/PhillyJoin the Java Evolution Baltimore/DC/Philly
Join the Java Evolution Baltimore/DC/PhillyHeather VanCura
 
Join the Java Evolution for Victoria JUG
Join the Java Evolution for Victoria JUGJoin the Java Evolution for Victoria JUG
Join the Java Evolution for Victoria JUGHeather VanCura
 
JCP & Adopt-a-JSR @ GeeCon CZ
JCP & Adopt-a-JSR @ GeeCon CZJCP & Adopt-a-JSR @ GeeCon CZ
JCP & Adopt-a-JSR @ GeeCon CZHeather VanCura
 

Similar a Participate @JavaOne Brazil 2012 (20)

JCP15Years
JCP15YearsJCP15Years
JCP15Years
 
Jcp user groupsummit-2013
Jcp user groupsummit-2013Jcp user groupsummit-2013
Jcp user groupsummit-2013
 
JCP.Next Panel at JavaOne
JCP.Next Panel at JavaOneJCP.Next Panel at JavaOne
JCP.Next Panel at JavaOne
 
Bringing Java into the Open - OSCON 2014
Bringing Java into the Open - OSCON 2014Bringing Java into the Open - OSCON 2014
Bringing Java into the Open - OSCON 2014
 
FosdemJavaDevRoom2015
FosdemJavaDevRoom2015FosdemJavaDevRoom2015
FosdemJavaDevRoom2015
 
Jcp devoxx-2012
Jcp devoxx-2012Jcp devoxx-2012
Jcp devoxx-2012
 
Devoxx UK BOF session
Devoxx UK BOF sessionDevoxx UK BOF session
Devoxx UK BOF session
 
How the JCP Works & Adopt-a-Program Update for Paraguay JUG
How the JCP Works & Adopt-a-Program Update for Paraguay JUGHow the JCP Works & Adopt-a-Program Update for Paraguay JUG
How the JCP Works & Adopt-a-Program Update for Paraguay JUG
 
JCP Participation for ColumbiaJUG
JCP Participation for ColumbiaJUGJCP Participation for ColumbiaJUG
JCP Participation for ColumbiaJUG
 
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
JCP: The JCP and the future of Java by Heather VanCura, Manager, JCP Program ...
 
JCPAfricaJUG
JCPAfricaJUGJCPAfricaJUG
JCPAfricaJUG
 
Drive yourself, community with adopts and jcp to professionalism
Drive yourself, community with adopts and jcp to professionalismDrive yourself, community with adopts and jcp to professionalism
Drive yourself, community with adopts and jcp to professionalism
 
JCP How to Participate @ JavaOne Russia
JCP How to Participate @ JavaOne RussiaJCP How to Participate @ JavaOne Russia
JCP How to Participate @ JavaOne Russia
 
JCP & Adopt-a-JSR @ GeeCon
JCP & Adopt-a-JSR @ GeeConJCP & Adopt-a-JSR @ GeeCon
JCP & Adopt-a-JSR @ GeeCon
 
JavaOne Latin America Participate in Shaping Java's Future
JavaOne Latin America Participate in Shaping Java's Future JavaOne Latin America Participate in Shaping Java's Future
JavaOne Latin America Participate in Shaping Java's Future
 
Join the Java Evolution Baltimore/DC/Philly
Join the Java Evolution Baltimore/DC/PhillyJoin the Java Evolution Baltimore/DC/Philly
Join the Java Evolution Baltimore/DC/Philly
 
NYSIG Quickie
NYSIG QuickieNYSIG Quickie
NYSIG Quickie
 
Join the Java Evolution for Victoria JUG
Join the Java Evolution for Victoria JUGJoin the Java Evolution for Victoria JUG
Join the Java Evolution for Victoria JUG
 
Jozi JUG Hack Day
Jozi JUG Hack DayJozi JUG Hack Day
Jozi JUG Hack Day
 
JCP & Adopt-a-JSR @ GeeCon CZ
JCP & Adopt-a-JSR @ GeeCon CZJCP & Adopt-a-JSR @ GeeCon CZ
JCP & Adopt-a-JSR @ GeeCon CZ
 

Más de Heather VanCura

2019 JCP Program Year End Summary
2019 JCP Program Year End Summary2019 JCP Program Year End Summary
2019 JCP Program Year End SummaryHeather VanCura
 
MISK Global Forum - Building an Inclusive Workforce
MISK Global Forum - Building an Inclusive WorkforceMISK Global Forum - Building an Inclusive Workforce
MISK Global Forum - Building an Inclusive WorkforceHeather VanCura
 
2018 JCP Year End Summary
2018 JCP Year End Summary2018 JCP Year End Summary
2018 JCP Year End SummaryHeather VanCura
 
JCP 20 Years Infographic
JCP 20 Years InfographicJCP 20 Years Infographic
JCP 20 Years InfographicHeather VanCura
 
The Future of Java and You
The Future of Java and YouThe Future of Java and You
The Future of Java and YouHeather VanCura
 
Bringing Java into the Open
Bringing Java into the Open Bringing Java into the Open
Bringing Java into the Open Heather VanCura
 
Future of Java & You Latin America 2018
Future of Java & You Latin America 2018Future of Java & You Latin America 2018
Future of Java & You Latin America 2018Heather VanCura
 
The Future of Java and You
The Future of Java and YouThe Future of Java and You
The Future of Java and YouHeather VanCura
 
Heather How To Ally Ignite Talk
Heather How To Ally Ignite TalkHeather How To Ally Ignite Talk
Heather How To Ally Ignite TalkHeather VanCura
 
JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...
JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...
JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...Heather VanCura
 
JCP & The Future of Java
JCP & The Future of JavaJCP & The Future of Java
JCP & The Future of JavaHeather VanCura
 
Adopt-a-JSR Program Update
Adopt-a-JSR Program UpdateAdopt-a-JSR Program Update
Adopt-a-JSR Program UpdateHeather VanCura
 
Valencia EMEA Java User Group Summit
Valencia EMEA Java User Group SummitValencia EMEA Java User Group Summit
Valencia EMEA Java User Group SummitHeather VanCura
 
Participate in the Future of Java May 2017
Participate in the Future of Java May 2017Participate in the Future of Java May 2017
Participate in the Future of Java May 2017Heather VanCura
 
Heather VanCuraIntroductionEMEASummit2017
Heather VanCuraIntroductionEMEASummit2017Heather VanCuraIntroductionEMEASummit2017
Heather VanCuraIntroductionEMEASummit2017Heather VanCura
 
Java, JCP, Adopt-a-JSR & You DevNexus
Java, JCP, Adopt-a-JSR & You DevNexusJava, JCP, Adopt-a-JSR & You DevNexus
Java, JCP, Adopt-a-JSR & You DevNexusHeather VanCura
 

Más de Heather VanCura (20)

2019 JCP Program Year End Summary
2019 JCP Program Year End Summary2019 JCP Program Year End Summary
2019 JCP Program Year End Summary
 
MISK Global Forum - Building an Inclusive Workforce
MISK Global Forum - Building an Inclusive WorkforceMISK Global Forum - Building an Inclusive Workforce
MISK Global Forum - Building an Inclusive Workforce
 
JCP 20 Year Anniversary
JCP 20 Year AnniversaryJCP 20 Year Anniversary
JCP 20 Year Anniversary
 
2018 JCP Year End Summary
2018 JCP Year End Summary2018 JCP Year End Summary
2018 JCP Year End Summary
 
JCP 20 Years Infographic
JCP 20 Years InfographicJCP 20 Years Infographic
JCP 20 Years Infographic
 
APAC Tour 2019 update
APAC Tour 2019 updateAPAC Tour 2019 update
APAC Tour 2019 update
 
The Future of Java and You
The Future of Java and YouThe Future of Java and You
The Future of Java and You
 
Bringing Java into the Open
Bringing Java into the Open Bringing Java into the Open
Bringing Java into the Open
 
Future of Java & You Latin America 2018
Future of Java & You Latin America 2018Future of Java & You Latin America 2018
Future of Java & You Latin America 2018
 
The Future of Java and You
The Future of Java and YouThe Future of Java and You
The Future of Java and You
 
Heather How To Ally Ignite Talk
Heather How To Ally Ignite TalkHeather How To Ally Ignite Talk
Heather How To Ally Ignite Talk
 
JUG Tour November 2017
JUG Tour November 2017JUG Tour November 2017
JUG Tour November 2017
 
Java, the JCP & YOU
Java, the JCP & YOU Java, the JCP & YOU
Java, the JCP & YOU
 
JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...
JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...
JavaOne Tutorial Techniques for Getting More Kids, Especially Girls, Involved...
 
JCP & The Future of Java
JCP & The Future of JavaJCP & The Future of Java
JCP & The Future of Java
 
Adopt-a-JSR Program Update
Adopt-a-JSR Program UpdateAdopt-a-JSR Program Update
Adopt-a-JSR Program Update
 
Valencia EMEA Java User Group Summit
Valencia EMEA Java User Group SummitValencia EMEA Java User Group Summit
Valencia EMEA Java User Group Summit
 
Participate in the Future of Java May 2017
Participate in the Future of Java May 2017Participate in the Future of Java May 2017
Participate in the Future of Java May 2017
 
Heather VanCuraIntroductionEMEASummit2017
Heather VanCuraIntroductionEMEASummit2017Heather VanCuraIntroductionEMEASummit2017
Heather VanCuraIntroductionEMEASummit2017
 
Java, JCP, Adopt-a-JSR & You DevNexus
Java, JCP, Adopt-a-JSR & You DevNexusJava, JCP, Adopt-a-JSR & You DevNexus
Java, JCP, Adopt-a-JSR & You DevNexus
 

Último

WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 

Último (20)

WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 

Participate @JavaOne Brazil 2012

  • 1. JCP: How You Can Make a Positive Difference! Heather VanCura; heather@jcp.org Fabio Velloso; fabio@soujava.org.br http://jcp.org 1 Twitter @JCP_org
  • 2. For the community, by the community • 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). ● The JCP program now has over 1,000 corporate and individual members. ● More than 350 Java technology specifications are in development in the JCP program; ~two thirds have reached Final Release. 2
  • 3. Why participate? • As a corporation: • To influence the technologies that drive your market. • Because it's cheaper than developing everything yourself. • To provide opportunities for your developers. • To increase the size of your market. • To gain a competitive advantage (ship new products faster.) • As an individual: • Good karma and fun! • Experience and skill development. • Fame and fortune – grow your reputation and network. 3
  • 4. Levels of participation • Members. • Review specs, may participate in Expert Groups, vote in Executive Committee elections; flexible time commitment. • Expert Group members. • Create JSRs (write the spec, develop the RI and TCK); expert in field, high time commitment, help drive the direction of the JSR; moderate time commitment. • Specification Leads. • Responsible for leading the JSR & Expert Group (EG), delivery of spec, RI & TCK; a leading expert in area of JSR; considerable time commitment and recognition. • Executive Committee members. • Define JCP governance, processes, and contractual terms of membership. Vote on JSRs at defined stages through the process. Moderate time commitment. 4
  • 5. Join the JCP • Join the JCP program as a corporation, non-profit,or individual. • Free for non-profits , Java User Groups, and individuals! • See http://jcp.org/en/participation/membership2 • Register for an account on JCP.org. • Download, fill out, and scan, fax or mail the JSPA form to the JCP Program Office. 5
  • 6. Putting the community back into the JCP • No more barriers to participation. • All members of the Java community can participate: • In the implemenation of the platform through OpenJDK and GlassFish. • In the evolution of the platform through the JCP. • If you care about the future of Java...participate! 6
  • 7. JCP.next • A series of three JSRs: • JSR 348: Towards a new version of the Java Community Process completed in October 2011. • This JSR focused on relatively simple changes that we were able to implement within about six months. • JSR 355: Executive Committee Merge completed in August 2012. • Implementation began in October 2012 and will be completed in October 2013. • JSR 358: A major revision of the Java Community Process is in progress now. • This JSR will implement more complex changes and will modify the JSPA as well as the Process Document. 7
  • 8. JCP.next.1 (JSR 348) • The JSR was completed within 6 months and implemented a number of important changes JCP 2.8, implemented in October 2011 (~14 months ago). • Three themes aimed at: ● Transparency ● Participation ● Agility 8
  • 10. JSR 355 (the EC merge) • Because Java is One Platform, and because we expect ME and SE to converge over time, JSR 355 was introduced to merge the two Executive Committees into one. • This JSR will reduce the number of EC members and keep the same ratio (2:1) of ratified and elected seats. • Oracle will give up one of its permanent seats. • No other member may hold more than one seat. • No other significant changes to our processes. 10
  • 11. JCP.next.3 (JSR 358) • The last of the three JCP.next JSRs, JSR 358, is in process now. • This will tackle more complex issues such as licensing, IP flow, and governance, and will modify the JSPA. • This is a big deal (because all the lawyers will get involved.) – It will take a long time. 11
  • 12. Legal framework and governance • Java Specification Participation Agreement (JSPA) • A legal contract between members and Oracle. • Addresses Intellectual Property (IP) grants and the terms under which the spec, RI, and TCK should 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. 12
  • 13. Modifying the JSPA • The JSPA has not been significantly modified since 2002. (some minor changes were introduced in 2005.) • Since then the organization and the environment in which we operate have changed significantly. • The document is due for updating and clean up. • However, it is extremely complex and difficult to understand. • We must be very careful when making changes. • Plus… 13
  • 14. All the lawyers will get involved 14
  • 15. Our shopping list •Intellectual Property (IP) flow. •Compatibility policy. •Licensing and open-source. •Independent implementations. •The role of the RI. •The role of individuals. •Transparency. •Refactoring the JSPA. •Fee structure. •And lots more (see the Issue Tracker for the full list.) 15
  • 16. Why it matters • The JSPA is the foundation of the Java ecosystem. • It defines the way in which IP is granted and the terms under which the spec, RI, and TCK must be licensed. • The JSPA ensures: • that implementations of Java are compatible, • that the technologies we incorporate into Java are “safe” from an IP perspective (we know who owns them,) • that people can implement them and use them with confidence. 16
  • 17. Follow us on java.net • As JSR 348 mandates, all our work is carried out in public. • Start with our public java.net project. • There you will find links to: • The Observer mailing list (all Expert Group mail is copied here.) • The Issue Tracker. • The Document Archive (meeting agendas and minutes, task lists, and working drafts are published here.) 17
  • 18. Results... • JSR 348 introduced version 2.8 of the Process. • JSR 355 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 will be encouraged to voluntarily adopt them. • Now we need your participation! 18
  • 19. JCP 2.8 progress report • JCP 2.8 went into effect in October 2011. • All JSRs started since then are run under this version of the Process. • Spec-Leads of in-flight JSRs are encouraged to voluntarily adopt the new Process. • On doing so they are required to operate transparently, and become subject to the new JSR deadlines. 19
  • 20. JCP 2.8/2.9 adoption • There are 30 Active/In Progress JSRs. • 25 Active JSRs are operating under version 2.8 or above. • No Renewal Ballots yet. • 10 JSRs have been initiated under JCP 2.8 (1 was rejected.) • 17 JSRs have migrated to JCP 2.8. • 1 JSRs are in the process of migration to JCP 2.8. • 4 in-flight Active JSRs have not yet migrated. • Excluding those that have already posted a Final or Maintenance Release. • The PMO encourages Spec Leads to migrate at milestone postings. 20
  • 21. New JCP 2.8 JSRs • JSR 352, Batch Applications for the Java Platform (IBM) – PR, November 2012. • JSR 353, Java API for JSON Processing (Oracle) – EDR, September 2012. • JSR 354, Money and Currency API (Credit Suisse) – JSR Review, February 2012. • JSR 355, EC Merge (Oracle) – Final Release, August 2012. • JSR 356, Java API for WebSocket (Oracle) – EDR, September 2012. • JSR 358, A major revision of the Java Community Process (Oracle) – JSR Review, July 2012. • JSR 359, SIP Servlet 2.0 (Oracle) – JSR Review, July 2012. • JSR 360, Connected Limited Device Configuration 8 (Oracle) – JSR Review, October 2012. • JSR 361, Java ME Embedded Profile (Oracle) – JSR Review, October 2012. 21
  • 22. Migrated JCP 2.8/2.9 JSRs (1) • JSR 172, J2ME Web Services Specification (Oracle) – MR, October 2011. • JSR 236, Concurrency Utilities for Java EE (Oracle) – EG Formation, migrated March 2012. • JSR 338, Java Persistence 2.1 (Oracle) – EDR2, November 2012. • JSR 339, JAX-RS 2.0: The Java API for RESTful Web Services (Oracle) – PR, October 2012. • JSR 340, Java Servlet 3.1 Specification (Oracle) – EDR, August 2012. • JSR 341, Expression Language 3.0 (Oracle) – PR, August 2012. • JSR 343, Java Message Service 2.0 (Oracle) – EDR, March 2012. • JSR 344, JavaServer Faces 2.2 (Oracle) – EDR, December 2011. • JSR 345, Enterprise JavaBeans 3.2 (Oracle) – EDR, February 2012. 22
  • 23. Migrated JCP 2.8/2.9 JSRs (2) • JSR 346, Contexts and Dependency Injection for Java EE 1.1 (RedHat) – PR, November 2012. • JSR 335, Lambda Expressions for the JavaProgramming Language (Oracle) – EDR 2, July 2012. • JSR 337, Java SE 8 Release Contents (Oracle) – EG Formation, migrated September 2012. • JSR 308, Annotations on Java Types (M. Ernst, Oracle) – EDR 2, February 2012. • JSR 310, Date and Time API (S. Colebourne, M. Santos, Oracle) – EDR, September 2012. • JSR 349, Bean Validation 1.1 (RedHat) – PR, October 2012, JCP 2.9 • JSR 350, Java State Management (Oracle) – JSR Review, Aug 2011. • JSR 347, Data Grids for the Java Platform (RedHat) – JSR Review, April 2011. 23
  • 24. JSRs in the process of migrating • JSR 342, Java Platform, Enterprise Edition 7 (Java EE 7) Specification (Oracle) – EDR2, November 2012 • JSR 107, JCACHE - Java Temporary Caching API (G Luck, Oracle) – EDR , October 2012. • JSR 302, Safety Critical Java Technology (Open Group) – EDR, January 2011. • JSR 333, Content Repository API for Java Technology 2.1 (Adobe) – EDR, September 2011. • JSR 351, Java Identity API (Oracle) – JSR Review, September 2011. 24
  • 25. Transparency checklist for new JSRs • Is the schedule for the JSR publicly available, current, and updated regularly? • Can the public read and/or write to a wiki for the JSR? • Is there a publicly accessible discussion board for the JSR that you read and respond to regularly? • Have you spoken at conferences and events about the JSR recently? • Are you using open-source processes for the development of the RI and/or the TCK? • What are the Terms of Use required to use the collaboration tools you have prepared to use with the Expert Group, so that prospective EG members can judge whether they are compatible with the JSPA? • Does the Community tab for my JSR have links to and information about all public communication mechanisms and sites for the 25 development of my JSR?
  • 27. How to participate? • As an individual – OK. • As part of a team – better. • Work through your JUG. • Help each other. • Teach each other. • Work with each other. 27
  • 28. JUG members BeJUG (Belgium) JUG-EG (Egypt) BreizhJUG (Brittany) JUGF (Germany) JUG Indonesia Central Ohio JUG (USA) JUG-MK (Macedonia) Connecticut JUG (USA) JUG-RU (Russia) Detroit JUG (USA) JUG-USA Duchess (Women) London Java Community (UK) FASOJUG (Burkina Faso) Malaysia-JUG Houston JUG (USA) MoroccoJUG iJUG e.V. (Germany) Nashville JUG (United States) IndiJava (India) Oklahoma City JUG (USA) Japan JUG Rio JUG (Brazil) Java Student User Group (Vienna) Riviera JUG (France) Ruhrjug (Germany) Java Web User Group (London) Silicon Valley JavaFX User Group Jozi JUG (South Africa) (USA) JUG-AFRICA SouJava (Brazil) JUG Chennai (India) Utah JUG (USA) 28 Vancouver Island JUG (Canada)
  • 29. JUG representation on the EC • SouJava (Bruno Souza, Fabio Velloso, Yara Senger): • Nominated by Oracle to a ratified seat on the SE/EE EC in the May 2011 Special Election. • London Java Community (Ben Evans, Martijn Verburg, Trisha Gee): • Won an elected seat on the SE/EE EC in the May 2011 Special Election and re-elected in 2012. • Both have already made significant contributions to the work of the JCP. 29
  • 30. Adopt a JSR! Thank you and 30
  • 31. 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. 31
  • 32. Why should JUGs get involved? • To move the entire Java ecosystem forward. • To speed up the standards-development process. • To become part of the solution as opposed to staying silent. • To be at the forefront of new technology. • To ensure that Java standards are practical and relevant for the real world as opposed to the ivory tower. • We need expert input from end-users and developers. • To ensure that Java standards are truly global. • We need expert input from non-English speakers. 32
  • 33. How can you join? • Contact your local JUG leader, or... • Go to http://java.net/projects/adoptajsr and follow the simple set-up steps described there: • Join the Adopt-A-JSR project. • Sign up for the mailing list. 33
  • 34. How can you help? • Help to moderate the mailing lists; steer towards helpful conversations • Evangelize the JSR through social media, blogging or lightning talks. • Give a talk at your user group or online. • Help with documentation. • Translate into your native language. • Help to maintain the FAQ/Wiki. • Improve project infrastructure and JSR visibility. • Help set up JSR hosting (java.net, GitHub, etc.) • Help with Search Engine Optimization of website. • Ensure that downloads, mailing lists, issue trackers are easy to find. 34
  • 35. How else can you help? • Test the early RI builds; use them to find 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. • Help build the TCK; all implementations must pass the test suite – this is a great way to gain test experience. 35
  • 36. How to start an Adopt-A-JSR project • Start here http://java.net/projects/adoptajsr/pages/Home#Leading_an_Ad Also check out http://glassfish.org/adoptajsr page. • Set up a wiki page to coordinate your activities e.g. http://java.net/projects/ljc-london-jug/pages/JSR-310. • Link that into the matrix at http://java.net/projects/adoptajsr/ • Contact the Spec Lead & EG - find links on JSR pages e.g. http://jcp.org/en/jsr/detail?id=310 • 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. 36
  • 37. Adopt-a-JSR Transparency sub-project • Transparency sub-project of the Adopt-a-JSR program hosted on java.net. ● http://java.net/projects/jsr-transparency/pages/Home. • JUGs or individuals do transparency checks or audits on JSRs. • Provide qualitative and quantitative data to the community, Spec Leads, and the Program Office on the JSR’s compliance with the JCP’s transparency and participation requirements. • A matrix of results will be provided for each JSR actively operating under JCP 2.x. 37
  • 38. Community-provided assessment • The Transparency sub-project will host an online form for your input in areas such as: • http://www.java.net/form/jcp-2829-transparency?force=408 • The quality and utility of the public issue tracker. • How the Spec Lead and Expert Group communicate and interact on the JSR’s public mailing list. Are issues being resolved and addressed? • Whether the Expert Group represents all relevant sectors of the Java community, • Whether the Expert Group has published a draft of the JSR and whether this represents a convergence of competing implementations. 38
  • 39. Participate in OpenJDK • Go to http://java.net/projects/adoptopenjdk/ • Join the mailing list. • Join the IRC channel. • Or contact your local JUG leader. 39
  • 40. Adopt a JSR How JUGs Can Help
  • 41. SouJava's Adopt a JSR Effort • Continuation of previous JCP work – Now with stronger collaboration with other JUGs • 26 members at the Adopt a JSR list – SouJava + 4 JUGs represented – Plus 15 other directors involved on votes • 389 subscribers on “padronização” mailing list – Standards and JCP news and discussions • 17 “in progress” JSRs in the program
  • 42. SouJava's JCP Participation • Spec Lead – Michael Santos • JSR 310: Date and Time API [In Progress] • Members of Expert Groups – Osvaldo Doederlein • JSR 176: J2SE 5.0 (Tiger) Release Contents [Final] – Michael Santos • JSR 349: Bean Validation 1.1 [In Progress] – Vinicius Senger and Yara Senger • JSR 314: JavaServer Faces 2.0 [Final] – Bruno Souza and Fábio Velloso • JSR 348: Towards a new version of the Java Community Process [Final] • Member of the Executive Committee
  • 43. A Community Effort! • SouJava's participation is a multi-JUG effort – JavaBahia - Otávio Santana – JUG-MS - Jean Donato – GoJava – Marcelo Quinta, Raphael Adrien, Felipe Portes – JavaNoroeste – Thiago Vespa – BrasilJUGs – discussion with 20+ groups • London Java Community – Original idea and continuous inspiration!
  • 44. JCPAdmin Tool – JSR Reports • Automatic info about JCP JSR status • Sent weekly to mailing list and organizers • Helps us prepare for votes and reviews
  • 45. Challenges • JSRs require diverse technical knowledge – Involve lots of people? Or focus on specific interest areas? – Some votes based more on transparency than technical quality • Lack of knowledge of the JCP by Java developers – Hard to get up to speed – Guiding and setting next steps is a must • Communication – Need good communications skills from participants – Need commitment from developers to share information
  • 46. Why developers should participate? • Help define the future of Java – Create the future: best way to predict it • Professional Visibility – Curriculum, articles, presentations • Acquiring Knowledge – Learn from experts/networking, early access to docs & src code • Competitive Advantage – First to market, early access to info, setting the standards
  • 47. How JUGs Can Help? • Best: help your members participate – JUGs can offer the support for their member to shine – Remove barriers, reach for help, deal with the “boring” parts • Explain the JCP – Developers are used to the results, not the process – Basic concepts, steps to participate, where to find things • Coach – A political process has its difficulties! – Standards are slow, your support keeps the excitement
  • 48. How JUGs Can Help? • Organize – Priorities, focus, admin activities, meetings, events • Discuss – Group support dispel fears, create commitment – This is a long run effort, you need longevity • Teach the technology – Explaining early specs spread the benefits to all your members – For most members, this is the value they will see
  • 49. How JUGs Can Help? • Evangelize – Promoting the specs in your JUG creates local celebrities – Promote the work of your observers, your JUG, the specs • Set the expectations – Developers get frustrated when things go slow – Understand this is a medium / long term effort – Developers are sometimes afraid of not being “expert enough” – Coach them into starting as observers → grow to experts
  • 50. It will help your JUG • Receive attention from companies – Big vendors, local companies: show the value of all your efforts • Become more professional – Needs organization and commitment, promotes focus • Attract people – Developers working together: global impact, personal benefits • Collaborate with other JUGs – Being part of something larger!
  • 51. Thank you! • SouJava – soujava.org.br – @soujava • SouJava's Adopt-a-JSR page – soujava.org.br/servicos/adopt-a-jsr • International JUGs Adopt-a-JSR page – jugs.java.net/pages/AdoptAJSR
  • 52. Make the future Java! 52
  • 53. Questions? Contact us: Heather VanCura; heather@jcp.org Fabio Velloso; fabio@soujava.org.br http://jcp.org Blogs.oracle.com/jcp Twitter @JCP_org 53