18
ADOPT A JSR FOR JAVA EE 8 & MOROCCOJUG 2015 ROADMAP [email protected] www.moroccojug.org

Adopt A JSR - MoroccoJUG

Embed Size (px)

Citation preview

ADOPT A JSR FOR JAVA EE 8 & MOROCCOJUG 2015 ROADMAP

[email protected]

THANKS TO OUR SPONSORS

ACRONYM SOUP• JUG - Java User Group

• JSR - Java Specification Request

• JCP - Java Community Process

• RI - Reference Implementation

• TCK - Technology Compatibility Kit

THE JAVA COMMUNITY PROCESS

THE JAVA COMMUNITY PROCESS

Java specifications (JSRs) are developed collaboratively through an open and formal process. All interested members of the Java Community may participate.

Oracle’s competitors are active participants:

IBM, HP, and RedHat to name a few.

The Open Source and developer communities are also represented.

The Eclipse Foundation, Java User Groups.

WHAT IS THE ADOPT A JSR PROGRAM?

• See http://adoptajsr.org for full details

• A JUG lead initiative to improve standards in the Java ecosystem

• Groups of JUG members work on Java Specification Requests

WHY SHOULD THE JUGS GET INVOLVED? - 1

• To move the entire Java ecosystem forward

• To become part of the solution as opposed to staying silent

• Help define the future

• To be at the forefront of new technology

• To make sure the useful libraries and APIs get built

• To boost the careers of JUG members

• Gain new technical and community skills and much more!

WHY SHOULD THE JUGS GET INVOLVED? - 2

• To demystify the JCP and the standards process

• Get day to day developers knowledgable about the process

• To acquire new knowledge

• Gain valuable technical skills

• Learn a brand new part of the Java ecosystem

• To gain competitive advantage

• Be the early experts in a new standard

• Gain more members

• Helps build long lasting activities for the JUG

• Turns passive members into active ones!

HOW DOES IT HELP THE STANDARDS?

• Standards get earlier feedback

• Leading to more developer friendly APIs

• Standards get 'end user/developer' expert input

• Standards get developed more quickly, JUGs can help build

• Reference Implementations (RI)

• Technical Compatibility Kits (TCK)

• JUGs can also help with management of the JSR

• Triaging issues

• Testing

• + more!

THE JSR DEVELOPMENT CYCLE

STEPS TO TAKE AFTER JOINING• Find fellow members in your JUG to work with

• A particular JSR might already have members in your JUG working on it

• Double check the matrix at http://adoptajsr.org

• Join the relevant JSR mailing list

• The next few slides have suggested ideas

• Don’t forget to have fun!

STARTER LEVELS TO GET INVOLVED AT - 1

• Test the early RI builds

• Use them to find pain points (“It’s just too laborious to construct X”)

• Report bugs

• Help triage issues

• Reproduce issues

• Erase/merge duplicates

• Set priorities/categories etc

• Give feedback on design

• Discuss issues with your JUG and deliver feedback

• Think about how you would use the JSR as a day to day developer

STARTER LEVELS TO GET INVOLVED AT - 2

• Help moderate the mailing lists

• Help the community self police towards helpful conversations

• Help evangelise the JSR

• Social media (Twitter, Facebook et al)

• Blogging (write a post about the JSR)

• Improve project infrastructure and JSR visibility

• Help setup canned hosting (java.net, GitHub etc)

• Ensure downloads, mailing lists, issue trackers are easy to find

• Help maintain their FAQ/Wiki

INTERMEDIATE LEVELS TO GET INVOLVED AT

• Help build the RI

• Get coding with the actual implementation of the spec!

• Help build the TCK

• All implementations must pass this crucial test suite

• Great way to gain real TDD/Unit/Integration test experience

ADVANCED LEVELS TO GET INVOLVED AT

• Join the Expert Group (EG)

• You need to be an expert in this technology

• EG members are central to pushing the JSR forwards

• High time commitment

• Lots of personal, community and career benefits

• Become the Spec Lead for a JSR

• You need to be a leading expert in a particular technology

• Considerable time commitment

• International recognition for your work

• Join the Executive Committee

• High time commitment, influence all standards

WHAT MOROCCOJUG WILL BE ADOPTING

• CDI (Contextes and Dependency injection for Java) 2.0

• MVC (Model-View-Controller) 1.0

• JMS (Java message Service) 2.1

• JSF (JavaServer Faces) 2.3

• JAX-RS (Java API for RESTful Web Services) 2.1

• JSON-B (Java API for JSON Binding) 1.0

WHAT MOROCCOJUG WILL BE DOING THIS YEAR

• JUG Meetings

• Last Thursday of every month

• 2 Devoxx4Kids edition

• JMaghreb 2015 (November 16-18)

• Presence in many tech events in Morocco

• Mobile development platform !!

• Thanks!