Java Day Tokyo 2015 was held on April 8th. Organized by Oracle Japan, it is the largest Java developer event in the country. Indeed it is really a replacement to JavaOne Japan. This was another highly successful year for the event with a fully sold out venue packed with youthful, energetic developers. Speakers included Steve Chin, Simon Ritter, Cameron Purdy and Linda DeMichiel. Topics included Java SE, Java EE, IoT and cloud. Java EE always has a strong showing at the event and this year was no exception.
Cameron Purdy, Vice President of Development at Oracle responsible for Java EE and WebLogic, spoke in the keynote and provided a state of the union for Java EE 7 and Java EE 8. After the keynote Java EE specification lead Linda DeMichiel delivered a detailed status update on Java EE 8. Concurrent to technical sessions the Japanese Java EE team ran the official Java EE 7 hands-on-lab as a half-day workshop. After Linda's talk Japanese Java EE evangelist Yoshio Terada did a "Java EE 7 Recipes" talk. It is very similar to the popular talk by US based Java EE advocate Josh Juneau (the linked video is from his well received talk at JavaOne 2014). Concurrent to this talk Oracle University Japan ran a very basic tutorial session on JSF 2.
In the next session slot I delivered my very popular talk on Cargo Tracker/Java EE + DDD. This talk basically overviews DDD and describes how DDD maps to Java EE using code examples/demos from the Cargo Tracker Java EE Blue Prints project. Below is the slide deck for the talk (click here if you can't see the embedded slides):
The talk was packed and I got some excellent feedback from a few folks afterwards. Concurrent to my talk there were other Java EE, JSF talks delivered by Japanese speakers including a very basic JPA 2 tutorial by Oracle University Japan. Following my talk Linda offered her views for the way forward in terms of continued alignment of the CDI and EJB programming models.
I finished off the conference with one of my latest talks titled "Reactive Java EE - Let Me Count the Ways!". It aligns Java EE with core Reactive Programming principles. Though many people don't realize it, Java EE has long had very good support for asynchronous, event-driven, non-blocking scalable systems. This includes features and APIs like JMS, Message Driven Beans, Asynchronous Session Beans, CDI events/observers, asynchronous Servlets/NIO, server/client side JAX-RS, WebSocket asynchronous support and the Java EE concurrency utilities. These features can be used in a highly Reactive fashion especially in conjunction with Java SE 8 lambdas, streams and CompletableFuture. The slides for the talk are here (click here if you can't see the embedded slides):
This talk was packed and very well received - this has been true basically every time I have presented it so far. Concurrent to my talk Hirofumi Iwasaki of Rakuten delivered his excellent talk "Seven Points for Applying Java EE 7". For those who don't know what Rakuten is, it is one of the largest e-commerce platforms in the world (by volume) based in Japan. Rakuten is a key Java EE adopter in Japan and the Rakuten engineers choose to actively advocate Java EE whenever they can. They are currently gradually adopting Java EE 7 and actively tracking Java EE 8. I think every server-side Java developer out there can learn something valuable from Hirofumi Iwasaki's talk. His slide deck is embedded below (click here if you can't see the embedded slides):
Concurrent to the talk there was another talk on JBatch/Java EE 7 delivered in Japanese.
The day after Java Day, Oracle University Japan arranged for customer only workshops with I and Simon Ritter. I led a half-day workshop in the morning on Java EE 7 while Simon covered Java SE 8 after lunch. The workshop, titled "Java EE 7 in Action", is something I've successfully delivered in the past. It uses Cargo Tracker but focuses on Java EE 7 usage instead of DDD and Java EE generally. I overview Java EE 7 at a high level, go through each API change and demo some selected features using Cargo Tracker. For each demo I explain the use case for the Java EE 7 feature in use and show actual running code. The workshop was a full house and was well received.
Fortunately the trip to Japan wasn't all work and no fun. It seems to always work out that I have more extra time than I expected in Japan (it is always better to plan for more time especially with Java EE customer meetings behind the scenes during a trip). I fully utilized my downtime by making a day trip to Nikko. Easily accessible from Tokyo it is one of the most picturesque sites in Japan - virtually a travel back in time all the way to the feudal Edo period almost on the scale of an entire town! It should be easy to see what I mean from album below (click here if you can't see the embedded album):
I also had the opportunity to witness Japan's most popular and revered Martial Art form - Sumo. If you are hung up on the fat guys in diapers Western meme - you really should open your eyes especially if you have the opportunity to visit Japan. Seeing the Sumo man-mountains in action should leave no doubt they are fierce athletes in every sense of the word (take a moment to consider the fact that each of these guys carry more lean muscle and bone mass - not including body fat mind you - than Arnold Schwarzenegger in his prime). It was an especially moving experience as I got to witness these guys very up-close and personal during their morning practice session instead of from an expensive nose-bleed arena seat more typical of the Japanese Sumo experience. Believe or not you don't need a single cent to do this - just a bit of grit, a small token of appreciation for the athletes and their trainers as well as some due respect for the Sumo culture. Just find one of the many hidden-in-plain-sight Sumo training dormitories spread across Tokyo and politely show up at pre-dawn hours when training starts. Here are some photos of the big boys in action:
I also got to check out the vibrant neon-crazy Shinjuku nightlife including the famed Robot Restaurant (think cabaret meets high-tech robots meets neon meets Japan).
I have to admit it was too trite for me compared to Nikko and underground Sumo but it certainly was intriguing and drew much larger tourist crowds by comparison. The last remaining unexplored avenue for me in Tokyo remains Japanese heavy metal (yes, there is such a thing). I made some headway tracking it down after some effort this time but didn't quite have enough time to catch a live performance. I guess that's for next time :-).
All in all this was another great Java Day Tokyo and another productive as well as fun trip to Japan.