Tuesday Jan 27, 2015

JMS 2.0 Errata - Public Review has now started!

As announced a few weeks ago, the JMS 2.0 specification (JSR 343) is going through a simple update process, i.e. an errata update. An errata is a simple kind of maintenance release intended purely to correct errors in the specification. The draft of this effort has just been published by the JCP (see Change Log and Issue List here) for a formal maintenance review period that will close on February 21st. That means that you have a little bit more than 3 weeks to submit your comments (see here). After that, the JMS 2.0 errata will go the JCP executive committee for ballot approval. Once 'JMS 2.0 Rev. A' is approved, the actual (and technical) work on JMS 2.1 (JSR 386) will start.

Tuesday Jan 20, 2015

Heads Up on Java EE @ DevNexus 2015!

DevNexus 2015 will be held on March 10-12 in Atlanta. If you are a US based developer and do not know about DevNexus, you are definitely missing out. DevNexus was started a few years ago as an initiative by the Atlanta Java User Group (now one of the largest Java user groups in the world) and Burr Sutter (one of the earliest Java champions). Since then DevNexus has grown to become one of the largest Java leaning conferences in the US, perhaps second only to JavaOne. I've spoken at the conference a few times over the years. This year's roster is unsurprisingly impressive both in terms of speakers and content. Java EE has a strong showing including a few talks from me.

Below are the talks that might interest you if you are a Java EE fan (the schedule is not quite final yet so do stay tuned to the conference agenda for changes):

  • Down and Dirty with Java EE 7: This is essentially our flagship lab/workshop at the moment covering Java EE 7. It has always proven popular so far and it is a great way to get some hands-on experience with Java EE 7. The materials for the lab is always available here. The lab is largely intended to be self-guided so you should be able to take advantage of the material even if you can't attend the lab in person. This will be my first talk at the conference.
  • JMS.Next(): JMS 2.0 and Beyond: This is essentially an overview of JMS 2 (already in Java EE 7), with a bit of an early preview of JMS 2.1 (to be included in Java EE 8). The slides for the talk are available here. This will be my second talk at the conference.
  • Java Persistence API: This session is a good mix of the basics, best practices and real world adoption stories for JPA. It's a talk by Jason Porter. Jason is a good speaker, a long time Java EE advocate and a Red Hat engineer.
  • HTTP 2.0 comes to Java. What Servlet 4.0 means to you: This session will discuss what's in HTTP 2 and what that means for the next major revision of the foundational Servlet specification. I would say this is a must-attend for all server-side Java developers. My friend, colleague and Servlet specification lead Ed Burns is giving this talk. Ed is a brilliant speaker that's always a pleasure to listen to.
  • Java EE 8: A Community Update: This is essentially a high level overview of what's coming in Java EE 8. This should be my last talk at the conference. Besides covering the current state of Java EE 8 I will also talk about how you can get involved in the process including through highly inclusive programs like Adopt-a-JSR. The slides for the talk are here.

Hope to see you at the conference? Besides giving my talks I will be attending a few talks myself as time allows. As always never hesitate to stop me if there is something I can help with. I'll also bring along some Java/Java EE goodies you are welcome to.

Tuesday Dec 02, 2014

JMS 2.0 Errata release

There is a clear plan to enhance the JMS specification and that is JMS 2.1 (JSR 368), slated for inclusion in Java EE 8.  The JMS 2.1 Expert Group is still in formation phase and once this is done, the EG will start the actual works on the next revision of JMS.  This work is expected to take time, Q3 2016 is the current ETA for the Java EE 8 final release. 

But let's not forget the current version of JMS, i.e. JMS 2.0 (JSR 343).  An errata is needed to correct a few errors in JMS 2.0 which can't wait for JMS 2.1 because they affect the ability of implementers to correctly implement JMS 2.0 today.  An 'errata' is a simple kind of maintenance release intended purely to correct errors in the specification, so clearly the intention is not define any new features (any new features should be discussed within the JMS 2.1 scope).

For that reason, Nigel Deakin (JMS 2.0 and JMS 2.1 Specification Lead) has proposed and started an errata for JMS 2.0.  An Errata release (and maintenance releases in general) don’t have an Expert Group.  Nevertheless Nigel is soliciting feedback on the various small issues that he plans to have addressed in the JMS 2.0 Errata.  You can check the changes proposed for the JMS 2.0 errata on this Wiki page, the jms-spec users mailing list is a good channel to provide feedback.

Wednesday Nov 26, 2014

JMS2 + JCP @ Chicago JUG

On September 4th, I spoke at the Chicago Java User Group on both JMS 2 as well as the basics of the JCP program. Spearheaded by the very capable likes of Freddy Guime and Bob Paulin the Chicago JUG has grown to become one of the most important Java User Groups in the world - both in terms of size, importance and impact. I am proud to say this is my second time to the JUG - a few months ago they had me speak on Java EE 7. My visit this time was very generously sponsored by Jay Zimmerman of the No Fluff Just Stuff (NFJS) tour. NFJS has always made an effort to support Java User Groups around the US.

I started the evening out with my JMS 2 talk (slides below). I also covered some of the possibilities for JMS 2.1.

I spent the last half-hour or so giving a very high level overview of the JCP program. I essentially borrowed Heather VanCura's slides (my own slides on the topic are rather old and developed when I was still an independent). Heather's slides can be found on SlideShare. The Chicago JUG has a very active interest in contributing to the JCP, which is why they had me speak on the topic. In fact with some help from US based Java EE/GlassFish advocate Josh Juneau they will soon be adopting one or more of the Java EE 8 JSRs via Adopt-a-JSR. The Java EE community is very lucky to have Josh's presence in the greater Chicago area. Josh is already an incredibly prolific author and blogger - it is awesome to see him become more prominent as a speaker as well including at JavaOne 2015 (and of course at his own local Chicago JUG).

It was great to be at the Chicago JUG and I hope to return sooner rather than later to the Windy City!

Wednesday Nov 12, 2014

Java EE @ NFJS Pacific Northwest Software Symposium Seattle

As some of you may be aware I recently joined the well-respected US based No Fluff Just Stuff (NFJS) Tour. The NFJS Pacific Northwest Software Symposium was held October 17 - 19 in Seattle, Washington.

I had five talks total over two days, more or less back-to-back. I did talks on Java EE 7/Java EE 8, the Cargo Tracker Java EE Blue Prints, JavaScript + Java EE, Java EE + NoSQL as well as WebSocket. More details, including slide decks and code as well as my NFJS tour schedule, posted on my personal blog.

Monday Nov 03, 2014

Java EE @ NFJS New England Software Symposium Boston

As some of you may be aware I recently joined the well-respected US based No Fluff Just Stuff (NFJS) Tour. The NFJS New England Software Symposium was held September 19 - 21 in Boston. This is one of the larger NFJS shows and attendance at the show and my sessions was pretty good. It is always encouraging to see the same folks attend more than one talk. On my way to the show I also stopped by at the Connecticut Java User Group. The JUG is led by my friend and co-author for EJB 3 in Action Ryan Cuprak. I've spoken at the JUG a number of times over the years and it was good to be back.

I had five talks total over two days, more or less back-to-back. I did talks on Java EE 7/Java EE 8, the Cargo Tracker Java EE Blue Prints, JavaScript + Java EE, Java EE + NoSQL as well as JMS 2. More details, including slide decks and code as well as my NFJS tour schedule, posted on my personal blog.

Wednesday Sep 17, 2014

JMS 2 Hands-on-Lab Video and Materials

I ran a virtual JMS 2 hands-on-lab on August 14th. Stephen Chin graciously hosted the lab through his excellent NightHacking virtual worldwide meetups. The goal of the lab was to give attendees some first-hand experience with the primary changes in JMS 2. In the first hour or so I did a brief presentation overviewing JMS 2 and went over the JMS 2 Javadocs. The rest of the time attendees actually wrote JMS 2 code mostly by themselves. There was also some pretty good interaction and Q&A throughout the lab. The entire lab was video recorded and is available below. The slides I used are available on SlideShare.

The lab materials are hosted on GitHub for anyone to use. The lab uses NetBeans 8, GlassFish 4 and Arquillian. I've deliberately designed the lab materials to be fairly self-guided so you can definitely use the lab materials on your own (or perhaps even run the lab in your own company/JUG?) . You are always welcome to reach out to me when needed.

Whether it can be called TDD (Test-Driven Development) is debatable but in the lab you'll basically be putting in code to finish a set of JUnit tests using JMS 2, starting from incomplete code with comments on what to do (don't worry, a completed solution is also posted :-)).

Tuesday Aug 12, 2014

Worldwide Virtual JMS 2 Hands-on-Lab on Thursday

I will be running a JMS 2 hands-on-lab this Thursday the 14th at 1:00 PM EST. Stephen Chin is graciously hosting the lab through his excellent NightHacking virtual worldwide meetups. The goal is to give you some first-hand experience with the primary changes in JMS 2. The lab is open to absolutely anyone.

The lab will be three hours total. In the first hour or so I'll be doing a brief presentation overviewing JMS 2 and going over the JMS 2 Javadocs. The rest of the time you will actually be writing JMS 2 code mostly by yourself but with a little bit of help from me. Whether it can be called TDD (Test-Driven Development) is debatable but you'll basically be putting in code to finish a set of JUnit tests using JMS 2, starting from incomplete code with comments on what to do (don't worry, a completed solution is also posted for you; it's also totally fine to not finish all the tests in the time allocated). Don't worry too much if you can't attend in person. I've designed the lab materials to be fairly self-guided so you can definitely use the lab materials on your own at a more convenient time. You are always welcome to reach out when needed. The following is the deck I'll be using for the lab:

The lab materials are hosted on GitHub. Make sure to at least read the setup instructions on the GitHub project read me. We will be using NetBeans 8, GlassFish 4 and Arquillian for the lab. As always, you are very welcome to use the lab materials yourself (perhaps to run the lab in your own company?) - I am happy to help if needed.

The details of the event are posted here. Hope to see you in the lab?

Thursday Jul 31, 2014

Java EE @ NFJS Lone Star Software Symposium Austin

As some of you may be aware, I recently joined the well-respected US based No Fluff Just Stuff (NFJS) Tour. The NFJS series Lone Star Software Symposium was held July 18 - 20 in Austin, Texas. The Austin show is one of the smaller ones but still was good overall. It is one of the few events of it's kind that take place this part the country so it is extremely important.

I had three talks total over two days, more or less back-to-back. I had decent attendance for all my sessions and had many of the same folks staying for multiple sessions which is always a very good sign. I did talks on Java EE 7/Java EE 8, the Cargo Tracker Java EE Blue Prints and JMS 2. More details, including slide decks and code as well as my NFJS tour schedule, posted on my personal blog.

Wednesday Jul 16, 2014

Java EE @ UberConf

UberConf was held June 24 - June 27 in Denver, Colorado. For those unaware, this is essentially the largest single annual event under the NFJS umbrella and to a certain extent the culminating point of the US based tour. Unlike the usual NFJS events that are squarely locally focused, it's intent is to be a national/international conference. Consequently it has a larger set of attendees, speakers, tracks and sessions. This year's event was very vibrant and clearly a success by all measures.

I had six talks total over three days, essentially back-to-back. I had excellent attendance for all my sessions and had many of the same folks staying for multiple sessions which is always a very good sign. I did talks on Java EE 7/Java EE 8, the Cargo Tracker Java EE Blue Prints, JMS 2, aligning Java EE 7 with the HTML 5/JavaScript Rich Client landscape, JAX-RS 2 and aligning Java EE with the NoSQL landscape. I also helped out with Arun Gupta's excellent Java EE 7 lab. More details, including slide decks and code, posted on my personal blog.

Wednesday Jul 09, 2014

Java EE @ NFJS Central Ohio Software Symposium

As some of you may be aware, I recently joined the well-respected US based No Fluff Just Stuff (NFJS) Tour. My first engagement with NFJS was the New York Software Symposium on April 4-5. The show went relatively well. My second engagement was extremely encouraging - the Central Ohio Software Symposium in Columbus, Ohio on June 6-8. Unlike New York, the Columbus show was fully sold out and very vibrant.

I had five talks total over two days, essentially back-to-back. I had a full house for all my sessions and had many of the same folks staying for multiple sessions which is always a very good sign. I did talks on Java EE 7/Java EE 8, the Cargo Tracker Java EE Blue Prints, JMS 2, aligning Java EE 7 with the HTML 5/JavaScript Rich Client landscape and JAX-RS 2. More details, including slide decks and code, posted on my personal blog.

Friday May 30, 2014

Java EE @ No Fluff Just Stuff Tour

If you work in the US and still don't know what the No Fluff Just Stuff (NFJS) Tour is, you are doing yourself a very serious disfavor. NFJS is basically a set program of world class speakers and topics offered at major US cities year round. I am proud to share with you that I recently joined the legendary NFJS troupe. My hope is that this will help solve the lingering problem of effectively spreading the Java EE message here in the US.

I had my tour debut on April 4-5 with the NFJS New York Software Symposium. I did four of my most favorite talks and it was not that bad for a start - I have more in the coming months in Columbus Ohio, Denver Colorado and Austin Texas. More details on the tour posted on my personal blog.

Hope to see you on the tour soon?

Monday Nov 18, 2013

JMS2@London GlassFish User Group

Some of you may be aware that the London GlassFish User Group got launched a few months ago. The group is organized and sponsored by C2B2 Consulting. C2B2 continues to offer GlassFish support and C2B2 Technical Director Steve Millidge recently offered his pretty level-headed reaction to the discontinuation of Oracle commercial support for GlassFish - it's worth reading for perspective.

The Manchester, UK based JMS 2 specification lead Nigel Deakin recently led a session in the group on the new JMS 2/Java EE 7 features in GlassFish 4. The video for the talk is posted below. There's also my own slide deck on JMS 2 posted on SlideShare (with source PDF and abstract).

Do consider inviting Nigel to give a JMS 2 talk if you are relatively local to him. Also, consider supporting the group if you are local to it. More recently, Nigel presented a JavaOne 2013 technical session titled Easier Messaging with JMS 2.0 as well as a Birds-of-a-Feather session titled What’s Next for JMS?. Stay tuned to Parleys.com for video of the sessions to be posted (the slide decks are already posted on the linked JavaOne Content Catalog).

Tuesday Nov 12, 2013

Java Developer Days India Trip Report

October 21st through October 25th I spoke at Java Developer Days India. This was three separate but identical one-day events in the cities of Pune (October 21st), Chennai (October 24th) and Bangalore (October 25th). For those with some familiarity with India, other than Hyderabad these cities are India's IT powerhouses.

The events were focused on Java EE. I delivered five sessions on Java EE 7, WebSocket, JAX-RS 2, JMS 2 and EclipeLink/NoSQL. The events went extremely well and was packed in all three cities. More details on the sessions and Java Developer Days India, including the slide decks, posted on my personal blog.