Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Advance your Career and Help
Define Java’s Future
Voxxed Day Athens
Heather VanCura
Director & Chair, JCP Program
@heathervc
May, 2017
Heather VanCura
•Chair & Director of the JCP Program
•Leader of Global Adopt-a-JSR Programs
•Open Source Fan
•Native Californian - from San Diego
•Personal Interests: Fun ☺
Bay Area, California - USA
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 4
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Continued growth
• #1 Development Platform, Now in the Cloud
• 10 Million Java Developers Worldwide
• #1 Choice For Developers
• 13 Billion Devices Run Java
• 200 Million Medical Devices Run Java
• 1 Billion Automotive Devices Run Java
• 97% of Enterprise Desktops Run Java
5
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 6
Java Philosophies
• Platform Completeness
• Quality and Security
• Modernization and Innovation
• Open and Transparent Evolution
• Developer Productivity & Compatibility
• Active Ecosystem Involvement
7
8
Technology Demand
9
▪A shift from the one
with the best
technical skills wins
▪To…the one with the
best people skills
wins
First Computer Programmer
In 2017… 50% of tech jobs = technical skills
! Top five key soft skills that engineers and other
professionals should develop for career success.
! Communication
! Creativity/Critical Thinking
! Adaptability/Flexibility
! Collaboration/Teamwork
! Leadership
11
▪Not easy to acquire
▪Require practice
▪Human interactions
▪Complex thinker,
relationships, emotional
intelligence = practice
with others
In-demand skills
How to acquire?
! Engage in Community events
! User Group Meetings
! Conferences
! Open Source Projects
! Java Community Process (JCP)
! Hack days &/or Hackergartens
! Kids coding workshops
13
Why Should Developers Participate?
1.Knowledge
2.Skills
3.Visibility
4.Altruism
5.Advance
Career
6.Fun
14
Membership Quotes
! "Joining the JCP, especially being a member of several
expert groups, has had a big impact on my career. Mostly
by making it visible for the leadership and managers in my
company that I am actually a part of forming the future of
the platform. I also think, or hope, that it is an
inspiration for my colleagues."

- Ivar Grimstad
! "Joining the JCP is like being a Java citizen."

- Heinz Kabutz
Collaborative Development - How does is work?
• Java Specification Requests (JSRs)
• A JSR is a single version of a Java specification.
• JSRs are led by a community 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 Specification
• A Reference Implementation (RI)
• A Technology Compatibility Kit (TCK)
•.
16
The JSR Development Cycle
•Includes formal public reviews and votes by the Executive
Committee.
•Full Members can submit & lead JSRs, serve on JSR Expert Groups.
•See the Process Document for the details.
17
Compatibility Triangle
Can you build an
implementation?
Is the specification
unambiguous?
Is the TCK correct?
Does the RI conform?
18
•.
19
Who Are The Members?
https://jcp.org/en/participation/membership
•Corporations
•Non-Profits/Open
Source
•Java User Groups
•Individual
Developers
JUGs around the World
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Participation
! 15,000+ Users
! 2,500 Expert Group Members
! 800+ Members
! 60+ Java User Groups
! 25 EC Members
! 380 JSRs
21
Organization
22
The Executive Committee
23
•Corporations
•Non-Profits/Open
Source
•Java User Groups
•Individual
Developers
How: Open Standards & Open Source
! We need both!
24
Complimentary
•Open source important requirement. So are Standards.
• Coop-etition. Agree on what to standardize (cooperation) & what to
compete on (implementations).
•Open standards implemented in open source = easier to implement
standard & for developers to understand technology.
• Results in more implementations and greater adoption of the
standard.
•An effective way to develop a standard-start with an open source
project that has demonstrated the need for standardization.
•.
25
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
26
How
•New revisions of each of
the three platforms.
• “JCP.Next” reforms .
•Increased participation
from Community.
Organization Focus
27
Java ME 8: (JSRs 360 & 361) – April 2014
28
Java EE 7: (JSR 342) – May 2013
29
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
The Vibrant Java EE Community
Java EE Compatible Application Servers User Groups
Java EE Developers Career OpportunityPublications
30
Java SE 8: JSR 337 - March 2014
31
Java 8 Adoption
JCP.next: Changing the Constitution
JCP.next (JSR 348) - Transparency
! No more smoke filled rooms!
34
JCP.next (JSR 355) – Merge the EC
! One Java, One EC
35
JCP.next (JSR 364) – Broadening Membership
37
!Eliminate Barriers to participation.
!Introduce new Membership levels.
!No Membership Fees.
!Electronic Signatures.
!Add Contributors for JSR Expert Groups.
!Add Associate Seats on Executive Committee.
JCP 2.10, Broadening JCP Membership
38
!Associate Members are individuals who can be listed as
contributors to JSRs and vote for the Executive Committee.
!Partner Members are Java User Groups and other non-
profit organizations that can serve on and vote for the
Executive Committee.
!Full Members can serve on Expert Groups, lead JSRs, serve
on and vote for the Executive Committee
Memberships
The JCP is More Open Than Before
39
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.
Working Together – We Achieve More

41
42
1) Pick JSR - New JSRs

https://jcp.org/en/jsr/stage?listBy=active
Recently submitted:
Security (JSR 375)
JSON-P 1.1 (JSR 374)
Java Module System (JSR 376)
Desktop Application API (JSR 377)
Portlet 3.0 Bridge for JSF 2.2(JSR
378)
Java SE 9 Release Contents (JSR
379)
Bean Validation 2.0 (JSR 380)
Java EE 8 (JSR 366)
CDI 2 (JSR 365)
JSON-B (JSR 367)
Servlet 4 (JSR 369)
JAX-RS 2.1 (JSR 370)
MVC (JSR 371)
JSF 2.3 (JSR 372)
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. |
Revised Java EE 8 Proposal
Retarget Java EE to address these trends - 15+ JSRs
Goals
• Migration path to cloud development and deployment models for
Java EE customers
• Migration path to microservices-based architecture for Java EE
applications
• Backwards compatibility with Java EE
Modernizing Java EE for Cloud and Microservices
43
Copyright © 2016, Oracle and/or its affiliates. All rights reserved. | 44
Java EE 7
Connector JAXBJSP Debugging
Managed BeansJSPConcurrency EE Interceptors JAX-WS WebSocket
Bean Validation JASPIC ServletJMS JTADeployment
Batch JACCDependency
Injection JAXR JSTL Management
CDI EJB JAX-RPC Web ServicesJSF Java Persistence
JSON-PCommon
Annotations EL JAX-RS Web Services
MetadataJavaMail
CDI
JSON-B
Security
Bean Validation
JSF
JAX-RS
JSON-P
Servlet
Java EE 8 (Targeted for 2017 Release)
JSP
JDK 9
! 122 JEPs targeted for JDK 9
– JEP = Java Enhancement Proposal
! Big one – JEP 261– Module System
– http://openjdk.java.net/jeps/261
! Jigsaw available in current JDK 9 EA (early access)
– http://jdk.java.net/9/
! Build 111 or later has Jigsaw in it
! Current available downloadable build is Build 170
! Another big step forward
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Java 9
• JEP 261: Module System
• JEP 200: The Modular JDK
• JEP 222: jShell
• JEP 260: Encapsulate Internal APIs
• JEP 282: jlink: The Java Linker
• JEP 295: Ahead of Time Compilation
(AOT)
Important Features
46
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. |
Coming in JDK 9
• Behind the scenes improvements
• New features and functionality
• Specialized developer tools
• Adopting new standards
• Gone, gone, gone!
The other pieces
47
JSR example page
List of Active JSRs (posting in last 12 months): http://jcp.org/en/jsr/all?
status=Active&activeMonths=12 .
48
2) Communication: Two Way Street
3) Decide on Steps: Take Action
•Share ideas and feedback, comment on list and public issue
trackers.
•Read early versions of specifications and Javadocs.
•Try writing sample applications using early builds of reference
implementation.
•Write or speak about the technology and encourage others to
participate. Translate into your native language.
!Evangelize the JSR -social media, blogging or lightning talks.
!Help with documentation.
50
51
4) Follow Public Discussions & Comment - Issue Tracker example
52
5) Share - Add & Use Resources on GitHub
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |
6) Participate in Hack Days – Have Fun!
Java 9 Virtual Hack Days - 22 April, 26 August
Participate in OpenJDK
54
•Adoption Group & Quality Outreach
•Join mail list prior to sending feedback: http://mail.openjdk.java.net/
mailman/listinfo/adoption-discuss
•https://wiki.openjdk.java.net/display/quality/Quality+Outreach
Copyright © 2017, Oracle and/or its affiliates. All rights reserved. | 55
Beyond Java 9...
Project
Valhalla
• Value Types
• Specialized
Generics
• Var Handles
Project Panama
• Foreign Function
Interface
• Date Layout Control
• Arrays 2.0
http://openjdk.java.net
Adopt-a-JSR
!A JUG-lead initiative to
improve Java standards.
!Global groups of JUG
members work on JSRs.
–Receive attention from local industry.
–Become more professional – helps
focus your group efforts.
–Attract more developers to your
community
London Java
Community - Java SE
JSR 310, Date and Time
API
JSR 335, Lambda
Expressions
Java 9/Jigsaw: Myriad
hack days, talks and
events organized!
Use Cases

57
58
BeJUG (Belgium) - Java EE
JSR 356, Java API for
WebSocket
Hack day (s).
Developed Tic-Tac-Toe
game Included in Java EE
7 SDK.
Use Cases

SouJava (Brazil)
JSR 310, Date and Time API
JSR 339, JAX-RS 2.0
344, JSF 2.2
Many talks, books, articles,
classes, code dojos (hack
days), translations
Use Cases

59
60
Chennai JUG - Java EE
JSR 338, Java Persistence 2.1
JSR 344, JSF 2.2
JSR 352, Batch
JSR 353, JSON
JSR 356, WebSocket
Developed sample ‘Urban
Traveler’ application.
Use Cases

.
61
We need 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
–GitHub: https://github.com/jcp-org; https://github.com/javaee
•Adopt-a-JSR online: adoptajsr.org. #adoptajsr
–adopt-a-jsr@googlegroups.com- the global mailing list
–IRC: #adoptajsr channel on irc.freenode.net
–GitHub: https://github.com/Adopt-a-JSR
62
thank you, ευχαριστώ, shukriya, dziekuje ,
tak, tack, grazie, gracias, danke,
merci, obrigado, bedankt,
kiitos, xie xie,ありがとう.
Questions? Find me on Twitter: @heathervc

Advance your Career and Help Define Java’s Future

  • 1.
    Copyright © 2016,Oracle and/or its affiliates. All rights reserved. | Advance your Career and Help Define Java’s Future Voxxed Day Athens Heather VanCura Director & Chair, JCP Program @heathervc May, 2017
  • 2.
    Heather VanCura •Chair &Director of the JCP Program •Leader of Global Adopt-a-JSR Programs •Open Source Fan •Native Californian - from San Diego •Personal Interests: Fun ☺ Bay Area, California - USA
  • 4.
    Copyright © 2017,Oracle and/or its affiliates. All rights reserved. | 4
  • 5.
    Copyright © 2017,Oracle and/or its affiliates. All rights reserved. | Continued growth • #1 Development Platform, Now in the Cloud • 10 Million Java Developers Worldwide • #1 Choice For Developers • 13 Billion Devices Run Java • 200 Million Medical Devices Run Java • 1 Billion Automotive Devices Run Java • 97% of Enterprise Desktops Run Java 5
  • 6.
    Copyright © 2017,Oracle and/or its affiliates. All rights reserved. | 6 Java Philosophies • Platform Completeness • Quality and Security • Modernization and Innovation • Open and Transparent Evolution • Developer Productivity & Compatibility • Active Ecosystem Involvement
  • 7.
  • 8.
  • 9.
    9 ▪A shift fromthe one with the best technical skills wins ▪To…the one with the best people skills wins First Computer Programmer
  • 10.
    In 2017… 50%of tech jobs = technical skills ! Top five key soft skills that engineers and other professionals should develop for career success. ! Communication ! Creativity/Critical Thinking ! Adaptability/Flexibility ! Collaboration/Teamwork ! Leadership
  • 11.
    11 ▪Not easy toacquire ▪Require practice ▪Human interactions ▪Complex thinker, relationships, emotional intelligence = practice with others In-demand skills
  • 12.
    How to acquire? !Engage in Community events ! User Group Meetings ! Conferences ! Open Source Projects ! Java Community Process (JCP) ! Hack days &/or Hackergartens ! Kids coding workshops
  • 13.
  • 14.
    Why Should DevelopersParticipate? 1.Knowledge 2.Skills 3.Visibility 4.Altruism 5.Advance Career 6.Fun 14
  • 15.
    Membership Quotes ! "Joiningthe JCP, especially being a member of several expert groups, has had a big impact on my career. Mostly by making it visible for the leadership and managers in my company that I am actually a part of forming the future of the platform. I also think, or hope, that it is an inspiration for my colleagues."
 - Ivar Grimstad ! "Joining the JCP is like being a Java citizen."
 - Heinz Kabutz
  • 16.
    Collaborative Development -How does is work? • Java Specification Requests (JSRs) • A JSR is a single version of a Java specification. • JSRs are led by a community 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 Specification • A Reference Implementation (RI) • A Technology Compatibility Kit (TCK) •. 16
  • 17.
    The JSR DevelopmentCycle •Includes formal public reviews and votes by the Executive Committee. •Full Members can submit & lead JSRs, serve on JSR Expert Groups. •See the Process Document for the details. 17
  • 18.
    Compatibility Triangle Can youbuild an implementation? Is the specification unambiguous? Is the TCK correct? Does the RI conform? 18
  • 19.
    •. 19 Who Are TheMembers? https://jcp.org/en/participation/membership •Corporations •Non-Profits/Open Source •Java User Groups •Individual Developers
  • 20.
  • 21.
    Copyright © 2016,Oracle and/or its affiliates. All rights reserved. | Participation ! 15,000+ Users ! 2,500 Expert Group Members ! 800+ Members ! 60+ Java User Groups ! 25 EC Members ! 380 JSRs 21
  • 22.
  • 23.
  • 24.
    How: Open Standards& Open Source ! We need both! 24
  • 25.
    Complimentary •Open source importantrequirement. So are Standards. • Coop-etition. Agree on what to standardize (cooperation) & what to compete on (implementations). •Open standards implemented in open source = easier to implement standard & for developers to understand technology. • Results in more implementations and greater adoption of the standard. •An effective way to develop a standard-start with an open source project that has demonstrated the need for standardization. •. 25
  • 26.
    Open Source Implementations •TheReference 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 26
  • 27.
    How •New revisions ofeach of the three platforms. • “JCP.Next” reforms . •Increased participation from Community. Organization Focus 27
  • 28.
    Java ME 8:(JSRs 360 & 361) – April 2014 28
  • 29.
    Java EE 7:(JSR 342) – May 2013 29
  • 30.
    Copyright © 2016,Oracle and/or its affiliates. All rights reserved. | The Vibrant Java EE Community Java EE Compatible Application Servers User Groups Java EE Developers Career OpportunityPublications 30
  • 31.
    Java SE 8:JSR 337 - March 2014 31
  • 32.
  • 33.
  • 34.
    JCP.next (JSR 348)- Transparency ! No more smoke filled rooms! 34
  • 35.
    JCP.next (JSR 355)– Merge the EC ! One Java, One EC 35
  • 36.
    JCP.next (JSR 364)– Broadening Membership
  • 37.
    37 !Eliminate Barriers toparticipation. !Introduce new Membership levels. !No Membership Fees. !Electronic Signatures. !Add Contributors for JSR Expert Groups. !Add Associate Seats on Executive Committee. JCP 2.10, Broadening JCP Membership
  • 38.
    38 !Associate Members areindividuals who can be listed as contributors to JSRs and vote for the Executive Committee. !Partner Members are Java User Groups and other non- profit organizations that can serve on and vote for the Executive Committee. !Full Members can serve on Expert Groups, lead JSRs, serve on and vote for the Executive Committee Memberships
  • 39.
    The JCP isMore Open Than Before 39
  • 40.
    How will youParticipate? •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.
  • 41.
    Working Together –We Achieve More
 41
  • 42.
    42 1) Pick JSR- New JSRs
 https://jcp.org/en/jsr/stage?listBy=active Recently submitted: Security (JSR 375) JSON-P 1.1 (JSR 374) Java Module System (JSR 376) Desktop Application API (JSR 377) Portlet 3.0 Bridge for JSF 2.2(JSR 378) Java SE 9 Release Contents (JSR 379) Bean Validation 2.0 (JSR 380) Java EE 8 (JSR 366) CDI 2 (JSR 365) JSON-B (JSR 367) Servlet 4 (JSR 369) JAX-RS 2.1 (JSR 370) MVC (JSR 371) JSF 2.3 (JSR 372)
  • 43.
    Copyright © 2016,Oracle and/or its affiliates. All rights reserved. | Revised Java EE 8 Proposal Retarget Java EE to address these trends - 15+ JSRs Goals • Migration path to cloud development and deployment models for Java EE customers • Migration path to microservices-based architecture for Java EE applications • Backwards compatibility with Java EE Modernizing Java EE for Cloud and Microservices 43
  • 44.
    Copyright © 2016,Oracle and/or its affiliates. All rights reserved. | 44 Java EE 7 Connector JAXBJSP Debugging Managed BeansJSPConcurrency EE Interceptors JAX-WS WebSocket Bean Validation JASPIC ServletJMS JTADeployment Batch JACCDependency Injection JAXR JSTL Management CDI EJB JAX-RPC Web ServicesJSF Java Persistence JSON-PCommon Annotations EL JAX-RS Web Services MetadataJavaMail CDI JSON-B Security Bean Validation JSF JAX-RS JSON-P Servlet Java EE 8 (Targeted for 2017 Release) JSP
  • 45.
    JDK 9 ! 122JEPs targeted for JDK 9 – JEP = Java Enhancement Proposal ! Big one – JEP 261– Module System – http://openjdk.java.net/jeps/261 ! Jigsaw available in current JDK 9 EA (early access) – http://jdk.java.net/9/ ! Build 111 or later has Jigsaw in it ! Current available downloadable build is Build 170 ! Another big step forward
  • 46.
    Copyright © 2017,Oracle and/or its affiliates. All rights reserved. | Java 9 • JEP 261: Module System • JEP 200: The Modular JDK • JEP 222: jShell • JEP 260: Encapsulate Internal APIs • JEP 282: jlink: The Java Linker • JEP 295: Ahead of Time Compilation (AOT) Important Features 46
  • 47.
    Copyright © 2017,Oracle and/or its affiliates. All rights reserved. | Coming in JDK 9 • Behind the scenes improvements • New features and functionality • Specialized developer tools • Adopting new standards • Gone, gone, gone! The other pieces 47
  • 48.
    JSR example page Listof Active JSRs (posting in last 12 months): http://jcp.org/en/jsr/all? status=Active&activeMonths=12 . 48
  • 49.
  • 50.
    3) Decide onSteps: Take Action •Share ideas and feedback, comment on list and public issue trackers. •Read early versions of specifications and Javadocs. •Try writing sample applications using early builds of reference implementation. •Write or speak about the technology and encourage others to participate. Translate into your native language. !Evangelize the JSR -social media, blogging or lightning talks. !Help with documentation. 50
  • 51.
    51 4) Follow PublicDiscussions & Comment - Issue Tracker example
  • 52.
    52 5) Share -Add & Use Resources on GitHub
  • 53.
    Copyright © 2014,Oracle and/or its affiliates. All rights reserved. | 6) Participate in Hack Days – Have Fun! Java 9 Virtual Hack Days - 22 April, 26 August
  • 54.
    Participate in OpenJDK 54 •AdoptionGroup & Quality Outreach •Join mail list prior to sending feedback: http://mail.openjdk.java.net/ mailman/listinfo/adoption-discuss •https://wiki.openjdk.java.net/display/quality/Quality+Outreach
  • 55.
    Copyright © 2017,Oracle and/or its affiliates. All rights reserved. | 55 Beyond Java 9... Project Valhalla • Value Types • Specialized Generics • Var Handles Project Panama • Foreign Function Interface • Date Layout Control • Arrays 2.0 http://openjdk.java.net
  • 56.
    Adopt-a-JSR !A JUG-lead initiativeto improve Java standards. !Global groups of JUG members work on JSRs. –Receive attention from local industry. –Become more professional – helps focus your group efforts. –Attract more developers to your community
  • 57.
    London Java Community -Java SE JSR 310, Date and Time API JSR 335, Lambda Expressions Java 9/Jigsaw: Myriad hack days, talks and events organized! Use Cases
 57
  • 58.
    58 BeJUG (Belgium) -Java EE JSR 356, Java API for WebSocket Hack day (s). Developed Tic-Tac-Toe game Included in Java EE 7 SDK. Use Cases

  • 59.
    SouJava (Brazil) JSR 310,Date and Time API JSR 339, JAX-RS 2.0 344, JSF 2.2 Many talks, books, articles, classes, code dojos (hack days), translations Use Cases
 59
  • 60.
    60 Chennai JUG -Java EE JSR 338, Java Persistence 2.1 JSR 344, JSF 2.2 JSR 352, Batch JSR 353, JSON JSR 356, WebSocket Developed sample ‘Urban Traveler’ application. Use Cases

  • 61.
  • 62.
    We need you! •Followthe 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 –GitHub: https://github.com/jcp-org; https://github.com/javaee •Adopt-a-JSR online: adoptajsr.org. #adoptajsr –adopt-a-jsr@googlegroups.com- the global mailing list –IRC: #adoptajsr channel on irc.freenode.net –GitHub: https://github.com/Adopt-a-JSR 62
  • 63.
    thank you, ευχαριστώ,shukriya, dziekuje , tak, tack, grazie, gracias, danke, merci, obrigado, bedankt, kiitos, xie xie,ありがとう. Questions? Find me on Twitter: @heathervc