adopt a jsr (full presentation)

17
1 Adopt a JSR (Full Presentation) Martijn Verburg (@karianna) James Gough (@JavaJimLondon) On behalf of the LJC and the global JUG program Thanks to SouJava for lots of extra valuable input into this presentation! Slide design by http://www.kerrykenneally.com

Upload: brinda

Post on 31-Jan-2016

44 views

Category:

Documents


0 download

DESCRIPTION

Adopt a JSR (Full Presentation). Martijn Verburg (@karianna) James Gough (@JavaJimLondon) On behalf of the LJC and the global JUG program Thanks to SouJava for lots of extra valuable input into this presentation! Slide design by http://www.kerrykenneally.com. 1. Acronym Soup. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Adopt a JSR (Full Presentation)

1

Adopt a JSR(Full Presentation)

Martijn Verburg (@karianna)

James Gough (@JavaJimLondon)

On behalf of the LJC and the global JUG program

Thanks to SouJava for lots of extra valuable input into this presentation!

Slide design by http://www.kerrykenneally.com

Page 2: Adopt a JSR (Full Presentation)

2

Acronym Soup

JUG - Java User Group

JSR - Java Specification Request

JCP - Java Community Process

RI - Reference Implementation

TCK - Technology Compatibility Kit

Page 3: Adopt a JSR (Full Presentation)

3

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

Page 4: Adopt a JSR (Full Presentation)

4

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 ensure that ivory tower standards do not occur

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!

Page 5: Adopt a JSR (Full Presentation)

5

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!

It’s fun!5

Page 6: Adopt a JSR (Full Presentation)

6

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– Managing mailing lists

– Triaging issues

– Testing

– Evangelism

– + more!

6

Page 7: Adopt a JSR (Full Presentation)

7

Who’s involved already?

See http://adoptajsr.org for up to date details.– The London Java Community (UK)

– SouJava (Brazil)

– GoJava (Brazil)

– Houston JUG (USA)

– Chennai JUG (India)

+ Several more starting out

7

Page 8: Adopt a JSR (Full Presentation)

8

What difference have they really made?

SouJava helped push through JSR-348– Reforming the Java Community Process (JCP)

– Open mailing lists

– Public Issue trackers

– Standards reviewed early and often

The LJC is helping make sure JSR-310 gets through– Date and Time for Java 8

– Focussed on building the Technology Compatibility Kit (TCK)

– ~40% by Dec 2011

– Ensures that you get the new Date and Time API for Java 8

Houston JUG is working on Data Grids– Vital technology for the cloud space

– Avoids vendor lock-in8

Page 9: Adopt a JSR (Full Presentation)

9

How do I join?

Contact your local JUG leader

OR

Go to http://adoptajsr.org– Follow the simple set-up steps there

9

Page 10: Adopt a JSR (Full Presentation)

10

An Important Note

Your enthusiasm and skill sets are what JSRs need!

But your efforts should have focus– Sometimes well meaning enthusiasm can be counter

productive– e.g. We’re not all language designers!– However, there is always a truly productive way to help a JSR

Don’t forget, co-ordinate and communicate your efforts– With the Spec Lead and the Expert Group– With other JUGs– http://adoptajsr.org has details on how you can do this

10

Page 11: Adopt a JSR (Full Presentation)

11

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

We encourage people/groups down two paths– Scratch an itch. Work on the part of the JSR you’re interested in!

– Spec lead guidance. Simply ask the Spec lead what needs done!

The next few slides have suggested ideas

Don’t forget to have fun!

11

Page 12: Adopt a JSR (Full Presentation)

12

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 (“Arggh NPE!!”)

– Suggest feature enhancements (“A convertX method would help”)

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 developer12

Page 13: Adopt a JSR (Full Presentation)

13

Starter Levels to get involved at - 2

Help moderate the mailing lists– Help the community self police towards helpful conversations

– Pour water on flame wars etc

Help evangelise the JSR– Social media (Twitter, Facebook et al)

– Blogging (write a post about the JSR)

– Lightning talks (give a talk at your user group or online!)

Improve project infrastructure and JSR visibility– Help setup canned hosting (java.net, GitHub etc)

– Help with SEO of website

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

– Help maintain their FAQ/Wiki13

Page 14: Adopt a JSR (Full Presentation)

14

Intermediate Levels to get involved at

Help get the JSR to JSR-348 compliance– Is there a public issue tracker?

– Does the EG communicate on a public mailing list?

– Is the EG balanced?

– Is the Std a coming together of competing implementations?

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

14

Page 15: Adopt a JSR (Full Presentation)

15

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

15

Page 16: Adopt a JSR (Full Presentation)

16

Starting an ‘Adopt a JSR’ group

Set up a wiki page to co-ordinate your activities– e.g. http://java.net/projects/ljc-london-jug/pages/JSR-310

– Link that into the matrix at http://adoptajsr.org

Contact the Spec Lead / EG

Mail your JUG members to gather interest– Outline what this JSR is and why the JUG should get involved

Identify areas that you and your members want to work on– Best to co-ordinate this with Spec Lead

16

Page 17: Adopt a JSR (Full Presentation)

17

Lets change the Java ecosystem!

Thanks for reading!– The acronyms become familiar, we promise!

We really hope you’ll consider joining us– Duke would love your help!

http://adoptajsr.org for full details– Join the Mailing list

– Join the IRC channel

Thanks!– Martijn Verburg (@karianna)

– James Gough (@JavaJimLondon)

17