Adopt a JSR Program
This program is intended to encourage JUG members to get involved in a Java Specification Request (JSR) and to evangelise that JSR to their JUG and the wider Java community in order to increase grass roots participation. JSRs cover all aspects of the Java ecosystem such as the new Date and Time API coming into Java 8, the latest JavaEE 7 APIs for the cloud and much more! This program will realise the following benefits:
The benefits to JUGs and individual members adopting a JSR are hopefully obvious. It looks great on the CV, gives you new technical and community skills and much more!
With JSR-348 bringing openness and transparency to the way in which JSRs are run, this is a great opportunity for all of us to help the Java ecosystem thrive.
An overall guideline for this program is that we want to gather up the enthusiasm and skill sets of Java developers around the world, but then focus their efforts at specific areas within JSRs. For example, this means that for the latest complex language features in Java 8 we'll encourage most 'Adopt a JSR' members to try the latest builds, evangelise the betas to major open source projects and to provide feedback on day-to-day usage. A smaller number of JUG members who are really qualified in the area of language design (if you think syntax is the important bit, then this probably isn't you) will be encouraged to contribute more directly. This of course includes enthusiasts who are willing to put in the time to really learn about this stuff. As Yara from SouJava pointed out at Devoxx, this is a great opportunity to also mentor budding experts in the various JSRs, so that there is a path for those who want to travel it.
You can participate in the program via:
Jump down to #Leading_an_Adopt_a_JSR_effort to go forward from there!
The Grids below indicate which JUGs are working or have worked on a JSR.
NOTE: Multiple JUGs can and should collaborate on a particular JSR! there's always plenty of work to do and it can be easily distributed.
|JUG||JSR-107 (JCACHE - Java Temporary Caching API)||JSR-236 (Concurrency utilities for Java EE)||JSR-308 (Type Annotations)||JSR-310 (Date and Time)||JSR-335 (Lambda Expressions)||JSR-338 (Java Persistence API, Version 2.1)||JSR-339 (JAX-RS 2.0)|
|Hyderabad Java User Group||Hyderabad Java User Group||Hyderabad Java User Group|
|LJC||107 Page||308 Page||310 Page||335 Page||339 Page|
|SouJava||310 Link TBA||335 Link TBA||339 Link TBA|
|PeruJUG||339 Link TBA|
|JUG||JSR-341 (EL 3.0)||JSR-342 (JavaEE 7)||JSR-343 (JMS 2.0)||JSR-344 (JSF 2.2)||JSR-345 (EJB 3.2)||JSR 346 (CDI 1.1)||JSR-347 (Data Grids)||JSR-349 (Bean Validation 1.1)|
|JUGC||344 page||346 page|
|LJC||341 Page||342 Page||343 Page||344 Page||345 Page||346 Page||347 Page||349 Page|
|SouJava||344 Link TBA||349 Link TBA|
|PeruJUG||343 Link TBA|
|JUG||JSR-350 (Session State management)||JSR-351 (Identity Management)||JSR-352 (Batch processing)||JSR-353 (JSON API)||JSR-354 (Currency)||JSR-356 (Websockets)||JSR-358 (JCP.next.3)||JSR-359 (SIP Servlet 2.0)|
|CongoJUG||353 Link TBA|
|LJC||350 Page||351 Page||352 Page||353 Page||354 Page||356 Page||358 Page||359 Page|
|SouJava||352 Link TBA||353 Link TBA||358 Link TBA|
|PeruJUG||353 Link TBA|
|Toronto JUG||353 Link TBA|
It's very important that any Adopt a JSR efforts are co-ordinated with with the Spec Leads / EG!
The best way to call for volunteers is to mail the [firstname.lastname@example.org members list]. After that, each JUG in the 'Who's Adopting JSRs?' matrix should ideally join the existing mailing lists etc that the JSR already has in place to co-ordinate work. We've made some suggestions (see 'What do we work on for a JSR?' section) as to what work an Adopt a JSR group can work on, but would love to hear more ideas!
There will also be a presentation held (via the JCP - TBA) for Spec Leads that covers how to get the most out of a community effort such as this program.
See the Downloads section for this project (left hand menu).
In London each little group does it their own way, some meet F2F, some do it over email, others have Skype sessions. Whatever way works with your group is fine.
Every JUG will want to work differently, all we can suggest is that you put together a wiki similar to LJC's Adopt a JSR Program for your overal program and for each JSR, a wiki similar to LJC's Adoption page for JSR-310 - New Date and Time.
Also see the Java EE 7 Adopt-a-JSR page http://glassfish.java.net/adoptajsr/ for a list of Java EE 7 JSRs and the Spec Lead requests from Adopt-a-JSR program participants.
See the List of Adopt a JSR presentations.
This section (taken from Somay Nakhal's work) contains some guidance for JUG members who are leading an Adopt a JSR group as used by the LJC. Take as much or as little of it as you need!
Once a group has really gotten going the leader(s) of the Adopt a JSR group might find it useful to:
Some other miscellaneous things you can do are:
The tasks that we deal with in London typically fall into three categories, starter, intermediate and advanced. The Adopt a JSR team will typically take a look at the JSR and ask the Spec Lead / Expert Group what help they require and/or volunteer for an area that they find particularly interesting. In particular you can look at:
Each JSR should run its own infrastructure (the Spec lead / EG will have the details), the Adopt a JSR volunteers should simply use that.
You'll find the deadlines on the official JSR page at JCP.org for each JSR. The Spec Lead and EG will be able to guide you on the deadlines they are working towards.
Back to Home