The Java Specialists Symposium: Unconference + Retreat = Mad fun

In September I flew from my home in Melbourne, Australia all the way to Crete in Greece for the Java Specialists Symposium 2012. It’s an open spaces ‘unconference’ which unlike a regular conference has no set program. The schedule is formed by the attendees when the conference begins. Attendees volunteer to present topics, convene discussions and organise coding sessions. Three sessions run each morning with the afternoon left to hack, code and otherwise enjoy the sunny surrounds that Crete has to offer that time of year.  In this post I’ll talk about my experiences at this unusual conference on the other side of the world.

About the Java Specialists Symposium

The conference first ran last year and was organised by Java Champion Dr Heinz Kabutz. I first heard about it via the Java Specialists newsletter and club he ran. Having been renowned in the Java community for many years, Heinz has some very knowledgeable friends who also came to the conference, including Java rock stars giants, performance gurus, book authors, framework designers and other leaders in the Java space. You get to liaise with some exceptionally smart, experienced people in a very close environment (the conference has been limited to about 50 people each year) When the call came out for attendees this year, even though it was so far away, my response was quite simple: ‘yes’!

How an Open Spaces conference works – Day One planning

On the first morning the ‘dis-organisers’ explain how the conference works.  The basic premise for each session is explained as:

  • The best people for the conference session are the ones that show up,
  • The best time to start is when everyone arrives, and
  • When its time to stop, its over.

We then go around the room, introduce our names, and nominate one keyword – a topic, framework or other item that we don’t want to leave the conference without hearing or talking about. This helps break the ice. That said, for newcomers it can be a little daunting realising that they’ll be potentially be thrusting their names into convening a session. When I attended my first un-conference the year before, I was nervous myself, and I could see it in some of the others who were new this year. I offered them the same advice that someone gave me the year before: ‘The best ideas arise over a cup of coffee” – and we’d then walk over to the coffee pot, post-it notes in hand.

weapons of choice

Ideas are captured and grouped on the brown board on the left.
They are moved to the Space-Time Matrix on the right where you can see the attendees gathered around planning out their schedule

After a couple of minutes people begin announcing and placing their hand-written post-its on the wall.  Commonalities and patterns emerge amongst the topics we’re interested in and soon enough, most people have volunteered at least of couple of sessions each that they’d wish to discuss. And happily but not unsurprisingly, this also includes the newcomers.

From this we can make a number of tracks, our ‘space-time matrix‘ based on various themes of performance, languages, tools and framework topics that make up the present day JVM.

Once we’ve made the schedule, the dis-organisers advise if we can squeeze out another session, or maybe even two if there’s time. There is an emphasis on creative outputs on the conference wiki, and everything we produce is licensed by the creative commons ‘share and share alike’ v3 license.

Finally there is some thought given to excursions that will happen in the afternoon, and a brief heads-up of the potential places available to go.

Location

The wifi is strong in this room, Master Luke

The venue of the conference was the Perle Hotel & Spa Marine which is in the small village of Stavros, near the town of Chania, which is one of the 4 main ‘cities’ in Crete.  As it was the end of the holiday season the resort was pretty much ours and so sessions were planned in the library, the ‘main room’ and two other rooms downstairs. Wifi could be a bit sketchy in parts of the venue but since we had the hotel to ourselves we could move around as we saw fit.  To give you an example, one session was held at couches of the hotel lobby, and another was held out outside at a table by the pool.

The great thing about both Stavros and Chania is that there is a plentiful supply of good tavernas, nearby beaches and tourist attractions. Each afternoon we’d split off into groups and head off to a different beach or destination.  You weren’t obliged to go and the hotel itself had its own kitchen with good meals – they also had a couple of decent swimming pools, conveniently near some ok wifi where you could actually practice what you’d picked up, or prepare for the next day’s sessions. Alternatively you could just take advantage of the onsite waterslides or have a dip in the Agean sea.

Because of the family friendly nature of the venue, some attendees elected to bring their families and build a European holiday around the conference. It’s a great excuse for a family holiday and many partners remark how nice it is spending their mornings by the pool whilst the attendees are off at the conference.

But of course, we weren’t just there to faff around, we were here to do some serious un-conferencing!

Convening & attending sessions

The great thing about an un-conference is that it truly goes with the flow. Sessions aren’t owned by the person convening them, and will usually involve a lot of interaction from the attendees.  People are encouraged to use the ‘law of two feet’. That is, if they find they aren’t contributing to a session or getting anything out of it, they are free to move. I used this myself when there were clashes in two topics I wanted to attend, and found it worked well to be able to expose more topics than there were sessions. It also worked well when a session I thought was going to be good was a bit slow to start, and so I could peek in on other sessions and even contribute to the discussion before heading back to the original session.

I also co-convened 4 sessions: Testing Principles and Practices, Happy Teams and Deadlines, Lambdas in Java 8 / Alternate ways in Java to manage collections and streams, and finally a session on Running a JUG / Adopting a JSR.

Because the nature of the conference is so open, in addition to the morning conference setup we decided to have a lightning-talks session one evening. This was all done with relatively short notice, but we easily filled an hour with talks before dinner. Everyone seemed to have something in their lightning talk toolbox without realising it, myself included – I got to present a Unit Testing with Groovy talk based on a blog I wrote earlier this year.

Of my favourite sessions, there was one titled 0xCAFEBABE which looks at how javac turns your Java into bytecode, and another on using a disassembler to find hidden tools and features in the JDK.  There were a couple of concurrency troubleshooting sessions which were also quite popular. Another was about Legacy Coding Katas.  A Kata is a set of simple programming exercises that you repeat, like a guitarist practising scales on a fretboard, in order to get better at using the tools and skills of the practitioner. The session reinforced why Katas are useful and how they should be done to be the most effective. I also met a member of the London Java Community committee and got his insights and experience into running a JUG – some of which has given me a lot of ideas to pump into my own local user group MelbJVM.

As always, the conversations between sessions – as well as chats over lunch, dinner, or at the beach – proved just as useful as the conference itself.  I highly recommend this style of conference for its flexibility.

Last day of the conference

This year after four days of conferencing there was an unofficial day 5 hack morning. This allowed us to practise what we’d picked up during the week, whilst still being able to take advantage of the resort facilities.

I was lucky enough when, by the pool, a group of local guys started showing me an open source project called OpenThesaurus that they were looking to port from German to Greek. It was written in Grails and I was so happy to help out on a Grails project again that I volunteered then and there to take part.

If I can unconference, you can too

The concept of unconferences is now a number of years old and has been slowly taking off. Barcamp in 2005 is probably be one of the most notable, since it spun off from tech publishing house O’Reilly, but apparently unconferences go back to the early 90’s.

The freedom from the usual structure of a regular conference and the smaller crowd sizes lead for a more intimate setting.  Unconferences also tend to be more focused, and as a result sessions can really deep-dive into some interesting things.

Combined with the unique backdrop of Crete, and a high calibre of collective experience, the ‘dis-organisers’ have proved that a retreat-style unconference is definitely worth attending. In addition, networking with people from other countries provides many unique points of view you wouldn’t get normally at home. Finally, you also get people who are local to the area showing you the best parts of their country and surrounding areas.

I highly recommend taking advantage of any unconference you come across, regardless of whether it’s in your home country or on the other side of the world.

Outputs from this year’s sessions can be found here http://wikieducator.org/Iced_Tea_in_Crete_2012:Schedule

Next year

The next Symposium will repeat again in August of next year.  The numbers are kept small to under 50 however there is a waiting list for next year if you wish to register.  http://jcrete.org

Photos courtesy of Andrew Hamilton

About Kon Soulianidis

I'm a Senior Consultant at Shine Technologies. JVM languages and technologies are my thing. A JVM developer is never short of choice. In my spare time I run MelbJVM, the Melbourne Java and JVM Users group.
This entry was posted in Java. Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s