SlideShare a Scribd company logo
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |
Java JUG Unconference: Future of Java - Jozi-JUG
Heather VanCura
heather@jcp.org
Twitter @heathervc
Johannesburg, Investec
June 2016
●What Runs Java?
3
4
 9 Million Java
developers
 3 Billion devices
 #1 Choice for
developers
 #1 Development
platform
Ubiquitous
Collaboratively Developed - Community
5
Heather VanCura
Java Community Process (JCP) Program
•Director of the JCP Program Office
•Leader of Global Adopt-a-JSR Programs
•Open Source Fan
•Native Californian - from San Diego
•Personal Interests: Fun 
Bay Area, California - USA
History
•1995: Sun Microsystems develops Java.
•1999: Sun opens up the development process,
creating the Java Community Process.
•2006: Sun open-sources Java.
•2007: Sun goes into financial decline.
•2010: Oracle acquires Sun and becomes the
steward of Java.
7
8
Organization
9
•.
1
Who Are The Members?
https://jcp.org/en/participation/membership
• Corporations
• Non-Profits/Open
Source
• Java User Groups
• Individual
Developers
The Executive Committee
1
• Corporations
• Non-Profits/Open
Source
• Java User Groups
• Individual
Developers
Compatibility Triangle
Can you build an
implementation?
Is the specification
unambiguous?
Is the TCK correct?
Does the RI conform?
1
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.
1
How: Open Standards & Open Source
1
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
1
Click icon to add picture
Why Participate?
1. Knowledge
2. Skills
3. Visibility
4. Altruism
5. Fun
1
Click icon to add picture
Joining the JCP empowers you to:
• Take Initiative – Requirements
• Adapt and Inform
• Develop New Markets
• Grow Developers
1
Why Participate as Corporation?
Click icon to add picture
How
•New revisions of each of
the three platforms.
• “JCP.Next” reforms .
•Increased participation
from Java User Groups.
2011 - Present Day
1
Java EE 7: (JSR 342) – May 2013
1
Java ME 8: (JSRs 360 & 361) – April 2014
2
Java SE 8: JSR 337 - March 2014
2
Java 8 Adoption
JCP.next: Changing the Constitution
JCP.next.4 (JSR 364)
JCP.next (JSR 364)
2
● 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
• JCP 1.0 – Formalization of JCP (1999).
• JCP 2.0 – Form Executive Committee (2000).
• JCP 2.5 – Enable Participation for Spec Leadership, Individuals (2002).
• JCP 2.6 – Embrace Open Source (2004).
• JCP 2.7 – Transparency (2009).
• JCP 2.8 – Increased transparency (2011).
• JCP 2.9 – Merge EC (2012).
• JCP 2.10 – Broaden Participation (2016).
•. 2
Use the Process to Change the Process
The JCP is More Open Than Before
2
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.
●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
JUGs around the World
London Java Community
JSR 310, Date and Time
API
JSR 335, Lambda
Expressions
Myriad hack days, talks
and events organized!
Use Cases
3
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
3
3
ADOPTAJSR.ORG wiki – Get Started & join list
You expanded wiki into eight languages: Arabic, Chinese, English, French, German,
Portuguese, Spanish, Turkish...you choose who will translate next language!
3
1) Pick JSR - New JSRs
https://jcp.org/en/jsr/stage?listBy=active
Recently submitted:
Security (JSR 375)
Java EE Management (JSR 373)
JSON-P 1.1 (JSR 374)
Units of Measurement (JSR 363)
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)
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |
Java EE 8 Community Survey
Glasfish.org/surveys
Web standards/HTML5 alignment, Cloud, CDI alignment, Enterprise, Java SE 8
JSR example pageSR page example
List of Active JSRs (posting in last 12 months):
http://jcp.org/en/jsr/all?status=Active&activeMonths=12 .
3
2) Communication: Two Way Street
3
4) Enter activity in the matrix - Collaborate
3
5) Follow Public Discussions & Comment - Jira example
5) How to Write a Bug - SSCCE
● Short, Self Contained, Correct (Compilable), Example
● Short (Small) - Minimise bandwidth for the example, do
not bore the audience.
● Self Contained - Ensure everything is included, ready to
go.
● Correct - Copy, paste, (compile,) see is the aim.
● Example - Displays the problem we are trying to solve.
4
4
6) Share - Add & Use Resources on GitHub
●Participate in Adopt OpenJDK
4
• Go to http://java.net/projects/adoptopenjdk/
• Also 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
●JDK 9
● 72 JEPs targeted for JDK 9
– JEP == Java Enhancement Proposal
● Big one – JEP 261– Module System
– http://openjdk.java.net/jeps/261
– Related JEPs for the Module System
● JEP 200 – The Modular JDK
● JEP 201 – Modular Source Code
● JEP 220 – Modular Run-Time Images
● JEP 260 – Encapsulate Most Internal APIs
● JEP 162 – Prepare for Modularization
Another big step forward
●JDK 9
● Jigsaw available in current JDK 9 EA (early access)
– https://jdk9.java.net/download/
● Build 111 or later has Jigsaw in it
● Current available downloadable build is Build 120
Another big step forward
●Other JEPs
• JEP 102: Process API Updates
– Java APIs for controlling and managing operating-system processes
• get the process id of the JVM
• get process information such as process id, name and state
• deal with process trees, a means to destroy a process tree
• Most enhancements added to Process and ProcessHandle classes
• JEP 158: Unified JVM Logging
– Common logging for all of the JVM
– Log messages categorized using tags
• JEP 271: Unified GC Logging
– GC logging using Unified JVM Logging
– If you have customized programs today that parse GC output, these will likely be impacted.
• JEP 197: Segmented Code Cache
– Improved organization and maintenance of JIT compiled code (performance improvement)
• Better instruction cache and instruction TLB behavior
… of significant interest
●Other JEPs
● JEP 232: Improve Secure Application Performance
– Improved security manager performance
● JEP 237: Linux/AArch64 Port
– JDK / JRE for ARM, Linux
● JEP 254: Compact Strings
– Transparently optimize single byte char usage
● CJUG presentation in February
● JEP 280: Indify String Concatenation
– Optimize String concatenation
… of significant interest
●HotSpot VM Improvements
● Many performance improvements from the JEPs
– JEP 254: Compact Strings
– JEP 280: Indify String Concatenation
– JEP 197: Segmented Code Cache
– JEP 232: Improve Secure Application Performance
● JIT compiler supporting enhanced instructions
– i.e. Intel AVX
● G1 GC
– Continues to be GC area of enhancement investment
Performance, performance, performance
4
JDK 9 Outreach
https://wiki.openjdk.java.net/display/Adoption/JDK+9+Outreach#JDK9Outreach-Introduction
●Test Java 9 – changes that may affect your code
● JDK 9 changes that may affect your code -
Added
– OCSP Stapling for TLS
– Multi-Release JAR Files
– Parser API for Nashorn
– Prepare JavaFX UI Controls & CSS APIs for Modularization
– Validate JVM Command-Line Flag Arguments
– XML Catalogs
– Platform-Specific Desktop Features
– llback.DialogCallbackHandler
4
●Test Java 9 – changes that may affect your code
● Changed
– Arrays.asList(x).toArray() returns Object[]
– Create PKCS12 Keystores by Default
– HarfBuzz Font-Layout Engine
– Make G1 the Default Garbage Collector
– Marlin Graphics Renderer
– Modular Run-Time Images
– New Version-String Scheme
– Unified JVM Logging
– Use CLDR Locale Data by Default
– UTF-8 Property Files
5
●Test Java 9 – changes that may affect your code
● Removed
– Remove GC Combinations Deprecated in JDK 8
– Remove Launch-Time JRE Version Selection
– Remove the JVM TI hprof Agent
– Remove the jhat Tool
– Removed API references to java.awt.peer and
java.awt.dnd.peer packages
– Removed Packer/Unpacker addPropertyChangeListener and
removePropertyChangeListener methods
– Removed LogManager addPropertyChangeListener and
removePropertyChangeListener methods
– Removed com.sun.security.auth.ca
5
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |
7) Participate in Hack Days – Have Fun!
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
•Adopt-a-JSR online: adoptajsr.org. #adoptajsr
–members@adoptajsr.java.net - the global mailing list
–IRC: #adoptajsr channel on irc.freenode.net
–GitHub: https://github.com/Adopt-a-JSR
5
If you want to go far…
.
5

More Related Content

Similar to Jozi-JUG JDK 9 Unconference

Join the Java Evolution GIDS Bangalore & Pune
Join the Java Evolution GIDS Bangalore & PuneJoin the Java Evolution GIDS Bangalore & Pune
Join the Java Evolution GIDS Bangalore & Pune
Heather VanCura
 
Join the Java Evolution NYC
Join the Java Evolution NYCJoin the Java Evolution NYC
Join the Java Evolution NYC
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/Philly
Heather VanCura
 
Join the Java Evolution Portland Oregon
Join the Java Evolution Portland OregonJoin the Java Evolution Portland Oregon
Join the Java Evolution Portland Oregon
Heather VanCura
 
Join the Java Evolution Columbus Ohio
Join the Java Evolution Columbus OhioJoin the Java Evolution Columbus Ohio
Join the Java Evolution Columbus Ohio
Heather VanCura
 
Advance your Career and Help Define Java’s Future
Advance your Career and Help Define Java’s FutureAdvance your Career and Help Define Java’s Future
Advance your Career and Help Define Java’s Future
Heather VanCura
 
Join the Java Evolution Coimbra
Join the Java Evolution CoimbraJoin the Java Evolution Coimbra
Join the Java Evolution Coimbra
Heather 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
 
Talk with Orlando Florida JUG & Senegal JUG
Talk with Orlando Florida JUG & Senegal JUGTalk with Orlando Florida JUG & Senegal JUG
Talk with Orlando Florida JUG & Senegal JUG
Heather VanCura
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011
Arun Gupta
 
How to Participate Japan
How to Participate JapanHow to Participate Japan
How to Participate Japan
Heather VanCura
 
Valencia EMEA Java User Group Summit
Valencia EMEA Java User Group SummitValencia EMEA Java User Group Summit
Valencia EMEA Java User Group Summit
Heather VanCura
 
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
GlobalLogic Ukraine
 
JCPParticipationOverviewJCertif
JCPParticipationOverviewJCertifJCPParticipationOverviewJCertif
JCPParticipationOverviewJCertif
Heather VanCura
 
NYSIG Quickie
NYSIG QuickieNYSIG Quickie
NYSIG Quickie
Heather VanCura
 
Java EE8 - by Kito Mann
Java EE8 - by Kito Mann Java EE8 - by Kito Mann
Java EE8 - by Kito Mann
Kile Niklawski
 
JavaOne 2014 Java EE 8 Booth Slides
JavaOne 2014 Java EE 8 Booth SlidesJavaOne 2014 Java EE 8 Booth Slides
JavaOne 2014 Java EE 8 Booth Slides
Edward Burns
 
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para TiGustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para TiSoftware Guru
 
Participate in the Future of Java Oredev
Participate in the Future of Java OredevParticipate in the Future of Java Oredev
Participate in the Future of Java Oredev
Heather VanCura
 

Similar to Jozi-JUG JDK 9 Unconference (20)

Join the Java Evolution GIDS Bangalore & Pune
Join the Java Evolution GIDS Bangalore & PuneJoin the Java Evolution GIDS Bangalore & Pune
Join the Java Evolution GIDS Bangalore & Pune
 
Join the Java Evolution NYC
Join the Java Evolution NYCJoin the Java Evolution NYC
Join the Java Evolution NYC
 
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
 
Join the Java Evolution Portland Oregon
Join the Java Evolution Portland OregonJoin the Java Evolution Portland Oregon
Join the Java Evolution Portland Oregon
 
Join the Java Evolution Columbus Ohio
Join the Java Evolution Columbus OhioJoin the Java Evolution Columbus Ohio
Join the Java Evolution Columbus Ohio
 
Advance your Career and Help Define Java’s Future
Advance your Career and Help Define Java’s FutureAdvance your Career and Help Define Java’s Future
Advance your Career and Help Define Java’s Future
 
Join the Java Evolution Coimbra
Join the Java Evolution CoimbraJoin the Java Evolution Coimbra
Join the Java Evolution Coimbra
 
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
 
Talk with Orlando Florida JUG & Senegal JUG
Talk with Orlando Florida JUG & Senegal JUGTalk with Orlando Florida JUG & Senegal JUG
Talk with Orlando Florida JUG & Senegal JUG
 
Jcp adopt jsr
Jcp adopt jsrJcp adopt jsr
Jcp adopt jsr
 
The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011The State of Java under Oracle at JCertif 2011
The State of Java under Oracle at JCertif 2011
 
How to Participate Japan
How to Participate JapanHow to Participate Japan
How to Participate Japan
 
Valencia EMEA Java User Group Summit
Valencia EMEA Java User Group SummitValencia EMEA Java User Group Summit
Valencia EMEA Java User Group Summit
 
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
 
JCPParticipationOverviewJCertif
JCPParticipationOverviewJCertifJCPParticipationOverviewJCertif
JCPParticipationOverviewJCertif
 
NYSIG Quickie
NYSIG QuickieNYSIG Quickie
NYSIG Quickie
 
Java EE8 - by Kito Mann
Java EE8 - by Kito Mann Java EE8 - by Kito Mann
Java EE8 - by Kito Mann
 
JavaOne 2014 Java EE 8 Booth Slides
JavaOne 2014 Java EE 8 Booth SlidesJavaOne 2014 Java EE 8 Booth Slides
JavaOne 2014 Java EE 8 Booth Slides
 
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para TiGustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
Gustavo Garnica: Evolución de la Plataforma Java y lo que Significa para Ti
 
Participate in the Future of Java Oredev
Participate in the Future of Java OredevParticipate in the Future of Java Oredev
Participate in the Future of Java Oredev
 

More from Heather VanCura

2019 JCP Program Year End Summary
2019 JCP Program Year End Summary2019 JCP Program Year End Summary
2019 JCP Program Year End Summary
Heather 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 Workforce
Heather VanCura
 
JCP 20 Year Anniversary
JCP 20 Year AnniversaryJCP 20 Year Anniversary
JCP 20 Year Anniversary
Heather VanCura
 
2018 JCP Year End Summary
2018 JCP Year End Summary2018 JCP Year End Summary
2018 JCP Year End Summary
Heather VanCura
 
JCP 20 Years Infographic
JCP 20 Years InfographicJCP 20 Years Infographic
JCP 20 Years Infographic
Heather VanCura
 
APAC Tour 2019 update
APAC Tour 2019 updateAPAC Tour 2019 update
APAC Tour 2019 update
Heather VanCura
 
The Future of Java and You
The Future of Java and YouThe Future of Java and You
The Future of Java and You
Heather 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 2018
Heather VanCura
 
The Future of Java and You
The Future of Java and YouThe Future of Java and You
The Future of Java and You
Heather VanCura
 
Heather How To Ally Ignite Talk
Heather How To Ally Ignite TalkHeather How To Ally Ignite Talk
Heather How To Ally Ignite Talk
Heather VanCura
 
JUG Tour November 2017
JUG Tour November 2017JUG Tour November 2017
JUG Tour November 2017
Heather VanCura
 
Java, the JCP & YOU
Java, the JCP & YOU Java, the JCP & YOU
Java, the JCP & YOU
Heather 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
 
Jozi JUG Hack Day
Jozi JUG Hack DayJozi JUG Hack Day
Jozi JUG Hack Day
Heather VanCura
 
JCP & The Future of Java
JCP & The Future of JavaJCP & The Future of Java
JCP & The Future of Java
Heather VanCura
 
Adopt-a-JSR Program Update
Adopt-a-JSR Program UpdateAdopt-a-JSR Program Update
Adopt-a-JSR Program Update
Heather 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 2017
Heather VanCura
 
Heather VanCuraIntroductionEMEASummit2017
Heather VanCuraIntroductionEMEASummit2017Heather VanCuraIntroductionEMEASummit2017
Heather VanCuraIntroductionEMEASummit2017
Heather 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 DevNexus
Heather VanCura
 

More from 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...
 
Jozi JUG Hack Day
Jozi JUG Hack DayJozi JUG Hack Day
Jozi JUG Hack Day
 
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
 
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
 

Recently uploaded

Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
Kari Kakkonen
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Jeffrey Haguewood
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Product School
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
UiPathCommunity
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
CatarinaPereira64715
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Inflectra
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
Product School
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
Fwdays
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance
 

Recently uploaded (20)

Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
DevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA ConnectDevOps and Testing slides at DASA Connect
DevOps and Testing slides at DASA Connect
 
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
Slack (or Teams) Automation for Bonterra Impact Management (fka Social Soluti...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...Mission to Decommission: Importance of Decommissioning Products to Increase E...
Mission to Decommission: Importance of Decommissioning Products to Increase E...
 
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
ODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User GroupODC, Data Fabric and Architecture User Group
ODC, Data Fabric and Architecture User Group
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 
How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...How world-class product teams are winning in the AI era by CEO and Founder, P...
How world-class product teams are winning in the AI era by CEO and Founder, P...
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdfFIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
FIDO Alliance Osaka Seminar: Passkeys at Amazon.pdf
 

Jozi-JUG JDK 9 Unconference

  • 1. Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Java JUG Unconference: Future of Java - Jozi-JUG Heather VanCura heather@jcp.org Twitter @heathervc Johannesburg, Investec June 2016
  • 2.
  • 4. 4  9 Million Java developers  3 Billion devices  #1 Choice for developers  #1 Development platform Ubiquitous
  • 6. Heather VanCura Java Community Process (JCP) Program •Director of the JCP Program Office •Leader of Global Adopt-a-JSR Programs •Open Source Fan •Native Californian - from San Diego •Personal Interests: Fun  Bay Area, California - USA
  • 7. History •1995: Sun Microsystems develops Java. •1999: Sun opens up the development process, creating the Java Community Process. •2006: Sun open-sources Java. •2007: Sun goes into financial decline. •2010: Oracle acquires Sun and becomes the steward of Java. 7
  • 8. 8
  • 10. •. 1 Who Are The Members? https://jcp.org/en/participation/membership • Corporations • Non-Profits/Open Source • Java User Groups • Individual Developers
  • 11. The Executive Committee 1 • Corporations • Non-Profits/Open Source • Java User Groups • Individual Developers
  • 12. Compatibility Triangle Can you build an implementation? Is the specification unambiguous? Is the TCK correct? Does the RI conform? 1
  • 13. 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. 1
  • 14. How: Open Standards & Open Source 1
  • 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 1
  • 16. Click icon to add picture Why Participate? 1. Knowledge 2. Skills 3. Visibility 4. Altruism 5. Fun 1
  • 17. Click icon to add picture Joining the JCP empowers you to: • Take Initiative – Requirements • Adapt and Inform • Develop New Markets • Grow Developers 1 Why Participate as Corporation?
  • 18. Click icon to add picture How •New revisions of each of the three platforms. • “JCP.Next” reforms . •Increased participation from Java User Groups. 2011 - Present Day 1
  • 19. Java EE 7: (JSR 342) – May 2013 1
  • 20. Java ME 8: (JSRs 360 & 361) – April 2014 2
  • 21. Java SE 8: JSR 337 - March 2014 2
  • 23. JCP.next: Changing the Constitution
  • 25. 2 ● 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
  • 26. • JCP 1.0 – Formalization of JCP (1999). • JCP 2.0 – Form Executive Committee (2000). • JCP 2.5 – Enable Participation for Spec Leadership, Individuals (2002). • JCP 2.6 – Embrace Open Source (2004). • JCP 2.7 – Transparency (2009). • JCP 2.8 – Increased transparency (2011). • JCP 2.9 – Merge EC (2012). • JCP 2.10 – Broaden Participation (2016). •. 2 Use the Process to Change the Process
  • 27. The JCP is More Open Than Before 2
  • 28. 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.
  • 29. 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
  • 31. London Java Community JSR 310, Date and Time API JSR 335, Lambda Expressions Myriad hack days, talks and events organized! Use Cases 3
  • 32. 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 3
  • 33. 3 ADOPTAJSR.ORG wiki – Get Started & join list You expanded wiki into eight languages: Arabic, Chinese, English, French, German, Portuguese, Spanish, Turkish...you choose who will translate next language!
  • 34. 3 1) Pick JSR - New JSRs https://jcp.org/en/jsr/stage?listBy=active Recently submitted: Security (JSR 375) Java EE Management (JSR 373) JSON-P 1.1 (JSR 374) Units of Measurement (JSR 363) 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)
  • 35. Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Java EE 8 Community Survey Glasfish.org/surveys Web standards/HTML5 alignment, Cloud, CDI alignment, Enterprise, Java SE 8
  • 36. JSR example pageSR page example List of Active JSRs (posting in last 12 months): http://jcp.org/en/jsr/all?status=Active&activeMonths=12 . 3
  • 37. 2) Communication: Two Way Street
  • 38. 3 4) Enter activity in the matrix - Collaborate
  • 39. 3 5) Follow Public Discussions & Comment - Jira example
  • 40. 5) How to Write a Bug - SSCCE ● Short, Self Contained, Correct (Compilable), Example ● Short (Small) - Minimise bandwidth for the example, do not bore the audience. ● Self Contained - Ensure everything is included, ready to go. ● Correct - Copy, paste, (compile,) see is the aim. ● Example - Displays the problem we are trying to solve. 4
  • 41. 4 6) Share - Add & Use Resources on GitHub
  • 42. ●Participate in Adopt OpenJDK 4 • Go to http://java.net/projects/adoptopenjdk/ • Also 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
  • 43. ●JDK 9 ● 72 JEPs targeted for JDK 9 – JEP == Java Enhancement Proposal ● Big one – JEP 261– Module System – http://openjdk.java.net/jeps/261 – Related JEPs for the Module System ● JEP 200 – The Modular JDK ● JEP 201 – Modular Source Code ● JEP 220 – Modular Run-Time Images ● JEP 260 – Encapsulate Most Internal APIs ● JEP 162 – Prepare for Modularization Another big step forward
  • 44. ●JDK 9 ● Jigsaw available in current JDK 9 EA (early access) – https://jdk9.java.net/download/ ● Build 111 or later has Jigsaw in it ● Current available downloadable build is Build 120 Another big step forward
  • 45. ●Other JEPs • JEP 102: Process API Updates – Java APIs for controlling and managing operating-system processes • get the process id of the JVM • get process information such as process id, name and state • deal with process trees, a means to destroy a process tree • Most enhancements added to Process and ProcessHandle classes • JEP 158: Unified JVM Logging – Common logging for all of the JVM – Log messages categorized using tags • JEP 271: Unified GC Logging – GC logging using Unified JVM Logging – If you have customized programs today that parse GC output, these will likely be impacted. • JEP 197: Segmented Code Cache – Improved organization and maintenance of JIT compiled code (performance improvement) • Better instruction cache and instruction TLB behavior … of significant interest
  • 46. ●Other JEPs ● JEP 232: Improve Secure Application Performance – Improved security manager performance ● JEP 237: Linux/AArch64 Port – JDK / JRE for ARM, Linux ● JEP 254: Compact Strings – Transparently optimize single byte char usage ● CJUG presentation in February ● JEP 280: Indify String Concatenation – Optimize String concatenation … of significant interest
  • 47. ●HotSpot VM Improvements ● Many performance improvements from the JEPs – JEP 254: Compact Strings – JEP 280: Indify String Concatenation – JEP 197: Segmented Code Cache – JEP 232: Improve Secure Application Performance ● JIT compiler supporting enhanced instructions – i.e. Intel AVX ● G1 GC – Continues to be GC area of enhancement investment Performance, performance, performance
  • 49. ●Test Java 9 – changes that may affect your code ● JDK 9 changes that may affect your code - Added – OCSP Stapling for TLS – Multi-Release JAR Files – Parser API for Nashorn – Prepare JavaFX UI Controls & CSS APIs for Modularization – Validate JVM Command-Line Flag Arguments – XML Catalogs – Platform-Specific Desktop Features – llback.DialogCallbackHandler 4
  • 50. ●Test Java 9 – changes that may affect your code ● Changed – Arrays.asList(x).toArray() returns Object[] – Create PKCS12 Keystores by Default – HarfBuzz Font-Layout Engine – Make G1 the Default Garbage Collector – Marlin Graphics Renderer – Modular Run-Time Images – New Version-String Scheme – Unified JVM Logging – Use CLDR Locale Data by Default – UTF-8 Property Files 5
  • 51. ●Test Java 9 – changes that may affect your code ● Removed – Remove GC Combinations Deprecated in JDK 8 – Remove Launch-Time JRE Version Selection – Remove the JVM TI hprof Agent – Remove the jhat Tool – Removed API references to java.awt.peer and java.awt.dnd.peer packages – Removed Packer/Unpacker addPropertyChangeListener and removePropertyChangeListener methods – Removed LogManager addPropertyChangeListener and removePropertyChangeListener methods – Removed com.sun.security.auth.ca 5
  • 52. Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | 7) Participate in Hack Days – Have Fun!
  • 53. 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 •Adopt-a-JSR online: adoptajsr.org. #adoptajsr –members@adoptajsr.java.net - the global mailing list –IRC: #adoptajsr channel on irc.freenode.net –GitHub: https://github.com/Adopt-a-JSR 5
  • 54. If you want to go far… . 5