Blog: JavaOne Shanghai 2013

After participating two times in Oracle’s regional JavaOne event in Moscow, Russia, I was really excited to get the opportunity to speak at this years JavaOne Shanghai in China.

Having never been to China, I didn’t know what to expect really. Before I left home all kinds of people offered me “helpful, but unsolicited” advice concerning food in China. Having heard: “Chinese eat everything except the table” a number of times, I must say that I was a little worried ;) Although I am not a very picky eater, I’m not that adventurous either. I must say that in the end, eating was a rather nice experience. I had local cuisine most days, and most of the time I had no idea what I was eating. The waiters served everything with a smile, but since most of them didn’t speak a word of English communicating about what we were having was out of the question. Putting my brave head on, I tried as much as I could. Most stuff I really liked, with the exception here and there.

The flight from Amsterdam to Shanghai with KLM took about 10-11 hours and was pretty comfortable, within the boundaries of how comfortable economy class flights can be. Treating myself to an emergency exit, isle, seat helped of course. As soon as I arrived at the airport the conference was “visible”. With signs in and around the airport building and even along the freeway from the airport to the Pudong business district. Later on I found them along the main routes from the city to the conference venue as well. Oracle managed to dress up the city quite nicely. Kinda like they do in San Francisco every year.

The hotel I stayed in was very luxurious and far from expensive compared to the value it offered. The view from my room onto the river and the skyline in the distance was epic. The only downside was that it was in the business district which was rather deserted at night and since it wasn’t in the vicinity of any subway stations most activity outside the hotel started with a taxi ride. However, since taxis are very cheap in Shanghai, this wasn’t much of a problem. Communicating with the drivers was though as most of them only speak Chinese, and I don’t. Even trying to point them to very well know tourist destinations in the city by using the “english name” didn’t work. Thanks to some great applications on my iPhone, I managed to get around the city by pointing them at the Chinese characters on my phone. Traffic going in and out of the city was mostly a mess though, so I quickly changed my tactics to having the taxi driver bring me to a nearby subway stations and continue my journey from there onwards. Riding the subway was a pretty smooth experience. Once again your smartphone is your friend. Compared to Tokyo last year, the Chinese subway etiquettes aren’t quite based upon courtesy, but “bum rush” was more like it.

View from my hotel room
View from my hotel room

Signs of the conference were all over the city
Signs of the conference were all over the city

Besides the language barrier, the weather conditions offered some resistance as well. With temperatures of around 39 Celsius during the day and very high humidity, stepping outside air conditioned buildings or cars meant instant soak. At night, temperature dropped at most 4 degrees, so even then conditions were rather tough to cope with. The air quality (or lack thereof) didn’t help either. I only managed to stay outside for just a couple of hours consuming water like crazy.

As a rather tall foreigner I really stood out in the crowds. People noticed. I lost count of how many people wanted to take pictures with me. Funny, but sometimes an awkward experience as well. A number of (mostly younger) people came up to me just to speak English. At first I didn’t notice it, and was anxious not to get robbed ;) but after it happened a couple of times I figured out the pattern.

Conference venue

So enough about the journey, let’s talk shop concerning the conference itself. JavaOne Shanghai was part of a combined experience with Oracle OpenWorld and attracted over 18,000 attendees according to the official numbers released by Oracle. Throughout the week the venue appeared pretty busy, but I had no means of validating the numbers. Of those 18,000 I guess about 1,000 – 1,500 were dedicated JavaOne attendees. OpenWorld attendees also had the opportunity to visit Java talks, so the actual number of attendees visiting Java talks was probably around 2,000. Over the three main days of the conference there was a full Java track with a number of technical sessions and hands-on labs in parallel. The JavaOne keynotes were done really well. Oracle brought out the big guns and using a team of all star evangelists they did a very good job of getting the technical message across. Judging from the mostly excited reactions from attendees sitting around me, and from what I saw, I think they did a very good job at this. The highlight of the technical keynote was JavaFX evangelist Jim Weaver’s show. Jim obviously used his flight into Shanghai to practice some Chinese, and he really connected with the crowd using as much Chinese words and phrases as he could while showing cool demos and playing music. People loved it.

In no way JavaOne Shanghai 2013 was a rip-off from JavaOne San Francisco 2012. There was up-to-date content (e.g. Java EE 7 being released just over a month ago) and a lot of very interesting sessions in general. In fact with JavaOne San Francisco 2013 being around the corner, I think that people got to see a number of scoops and previews of what is to come. Out of the ~450 speakers total (OOW / JavaOne combined) there was quite a number of foreign speakers. Most of them well known and often seen at other conferences around the world.

As a presenter the conference offered an extra hurdle. All slides had to be uploaded a number of weeks before the conference so they could be translated into Chinese. I received them back a couple days ahead of the conference and although I know my talk, those slides got me puzzled :) A simple solution was to use my own laptop to show myself the English version of the slides while the conference laptop was showing the Chinese version to the crowd. Besides having slides in Chinese, there was also a realtime translation service for attendees. I guess about 50% of the attendees used that to follow along. Dealing with realtime translation is something to get used to as a speaker otherwise you give the translators (and effectively the audience) a really hard time. I already had some experience with translation while presenting in Russia and Japan before. Trying to limit my speed and taking a pause here and there seemed to work out fine. Because I’m conscious about it, I tend to be more precise in what I’m trying to tell, having less urge to go off the beaten path. All in all it was a good experience. Interaction with the attendees proved difficult during the talk, people were mostly reluctant to ask or answer questions, but afterwards I had a number of people coming up and ask good questions.

The main session I presented was the familiar “Migrating Spring Applications to Java EE” talk. Although I started doing this talk back in 2011 there is still a lot of demand for it. Believe it or not but I get regularly invited to present it literally all over the world. In China especially enterprise Java developers almost only use Spring. With the popularity of Java EE (5 and 6) people are really interested in moving back to the standard again. The talk mostly concentrates on “how” this can be done, but starts of with discussing “why” you should consider doing it. The latter seemed to be a very hot topic given the large turnout and the various discussions I had with people about this subject, and also this appeared to be the main topics of the various interview sessions that I did.

Besides presenting my own session I attended a (small) number of other talks by international speakers. Other than that I spent my time doing interviews, flaunting the cover of my upcoming book around, or stayed at the Oracle/OTN booth in the pavilion meeting all sorts of interesting people meanwhile exchanging knowledge and/or experience. On Monday – just ahead of the conference – there was a joint meeting for Oracle and Java User Group leaders to mingle and exchange experiences. Just as with every other of those meetings that I have been to in EMEA and the US I met a lot of great people that dedicate their (spare) time to community. Another memorable event was the Geek Bike Ride on Sunday afternoon. A great means of coping with jet lag after having arrived just a couple hours earlier. More photos of the Geek Bike Ride can be found in Stephen Chin’s flickr album.

One of the final highlights of the city before returning back home, was taking the Maglev high speed train to the airport. At top speed, the train does 431 km/h. This clears the 30+ km ride from downtown Shanghai to Pudong International Airport in just under 8 minutes. A marvel of modern engineering and so I had to take it :)

Yes, that sign says 431 km/h…

In hindsight, JavaOne Shanghai was a great experience where I got to meet interesting people or had an opportunity to catch up with many others. Thank you to all and hopefully see you in two years in Beijing? Who knows!