Tuesday, November 13, 2012

Devoxx 2012 - University Day Two - review


Here we are, it is the second and the last  day for the first half of Devoxx. The university phase is over and tomorrow we have the main 'part' of the conference which is going to last until Friday noon. I will be departing a bit early this year so I am going miss the Friday part, but 2 more full conference days for me. 

The exhibition area is almost ready for main part of Devoxx so all the main sponsors had their stands ready and I managed to collect some t-shirt  and freebies. We, geeks love that stuff!



You can actually see some more photos from me, in my instagram feed. I happen to use a lot instagram to post photos both in facebook and twitter, which makes me think that I am deprecating my flickr account - but then again I am going to re-uploaded them as well.  Unfortunately my iphone4 camera seems to be getting busted and my photos are getting a weird 'mat' effect...time to upgrade..please gods of programming - sent me a brand new iPhone 5 :P .


Talks  

1. Building Modular Enterprise Applications in Java by Paul Bakker, Bert Ertman and Marcel Offermans


I decided to do a more hands on session and start the day with some coding on developing OSGi applications, a platform / tooling that I don't get to use a lot in my J2EE day to day work. I missed Bert's talk yesterday so the lab was an excellent opportunity to have a go. The room was packed!  I managed to complete most of the exercises and I kept the notes and sample configuration for future reading. 

OSGi can be complex in certain cases but with some help you can get to deploy and play with your own custom services. I hope I will manage to allocate some more time in the future on studying a bit more the OSGi world, I am was actually intrigued by the OSGi remote services specification - something that I would really like to study a bit more.

2. Performance Optimization Methodology by Aleksey Shipilev and Kirk Pepperdine

This was The talk of the day for me, quite intensive and advanced, going through the steps and phases that have to go consider towards spotting, identifying, analysing and resolving performance problems in modern Java applications. Kirk Pepperdine is a veteran on this field while A.Shipilev is contributing serious JVM /JDK optimizations working for Oracle. It was a long run and the speakers had developed an application which was used to demo every aspect of the performance optimization required, from system to application level. Heavy use of standard tools like Visual Vm, Thread dump tools and a small demo for the upcoming JClarity Censum tool, by the newly introduced venture of Kirk and friends. The best thing is that for all of you that did not make it the slides are already available here - so grab them and study them in case you are doing related work or you have unknown performance problems in your app. The overall mind-map of the speakers (an overview of all things) can be found here.


3. Introducing PersistIt: Open-source Java, Key-Value Storage that Beats Native Alternatives by Tim O'brien and Ori Herrnstadt

Interesting talk, PersistIt is an open source (Eclipse licensed) java key value storage that competes with already known to the java community libraries like H2 DB or BerkleyDB or MapDB. I really liked the open source mentality of the project which originates from server developed by Akiban. It aims to bring the NoSQL, SQL world together implementing major specifications in a in memory data storage (BTree variation). There were lots of points regarding performance and a plus that ACID transactions are supported. Worth testing and downloading the library anyway, it is simple after all. Happy to see new ideas and implementations on this front, heading open source and developer friendly.

4. FastOQL - Fast Object Queries for Hibernate by Žarko Mijailović, [Srđan Luković] and Dragan Milicev

I was very curious about this talk. We all spend time, improving, fixing or trouble shooting our Hibernate DB layer, or even trying to find ways to improve the performance of our HQL queries, while trying to maintain consistency and do not break older pieces of code. At least in my experience heavy re-factoring and fall back to pure JDBC mode can be the answer to many common problems. FastQL promises to resolve the optimization and productivity part of complex queries by introducing an alternative QL notation and trying to optimize the underlying queries issued. I became a bit sceptic though when the examples provided 'were' using HQL queries that were based on plain inner joins and the lack of support (at the moment) for left or right joins. I don't know if it possible to consider FastQL on an existing HQL based system and migrate part of the functionality, would it be risky? I can fully understand the concerns that FastQL is trying to address but I think it might need some more development. Anyhow it is a nice try and I hope to able to get out of the beta phase and become - production wise stable and future proof.

5. JDK 8 demo : Lambdas in Action by Guillaume Tardif

Excellent nice talk with samples of the upcoming Lambda expressions already available on openJDK (jdk8) releases. It is clear that this addition to the specification of the language is going to shake the java dev community harder than the generics did. I am kind of starting to like the final implementation and the way it is trying to preserve the type safety notion of Java. It is also obvious as many people indicate that λ expressions open the door for multiple inheritance in Java (in a specific way but..it is kind of true). Last but no least I am really afraid of cocky devs trying funcy coding that may lead to maintainability and easy to grasp issues, especially in large dev teams and large KLOC wise projects.

6. The Fascinating World of NAO by Tasha Carl

Cool BOF, the rise of the robots! NAO (like saying now)  is a European(French) project from Aldebaran Industries. It is still not a commercial product but at least 2000 of them can be found on several labs and especially universities (playing football as the speaker indicated). It has a 25 factor of independence (if I remember correct the term, meaning it can move and react in several ways and axes). It features some high gear, HD cameras, accelerometers, and gyroscopes. The robot can be programmed with Java (and C++)! It has a Linux based OS (or brain shall we say). It is quite cute and can dance very well as we all saw during the session. If you subscribe somehow to the developer program, you can get to have one NAO (which is Just in time - manufactured for every customer) for 3-4K Euro. Projects like NAO make you think what extraordinary things are about to come in a few years. I hope that one day I would be able to  be teaching my kid to program a robot like NAO just for the fun of it. The rise of the robots...I wish I could live in that era...in the far far future.

So ...

Busy day for sure, again there was a star talk and the many others that increased the number of notes in my laptop. I decided to pimp my macbookpro a bit more, I am kind of dropping the no sticker policy on my laptop, its becoming a veteran hehe. I also had the chance to touch and play with the new Google Nexus 4 phone. Excellent screen, snappy Android (it is getting closer to iOS), but the feel of the phone was very plastic for my taste and I was expecting to be a lot thinner.Lots of poeple have been complaining all over Europe for the supply lines. Friends in the UK and in Germany reported that the google eshop crashed almost 20 minutes after the 'opening' and the was actually a limited amount of devices available. Come on google!Anyway it is a well equipped device, I will dare to say this is most probably the first Android phone ever - coming closer to the iPhone.I guess future releases will be even better.




Big day tomorrow and a early start for me. Greetings from Antwerp - it is getting colder but it is a weirdly 'feeling' crispy night!

2 comments:

  1. Very nice overview.

    Thanks Paris!

    P.S.: Cool stickers!

    ReplyDelete
  2. Thanks mate, I can spare some stickers, if you buy me a cappucino :P

    hehe!

    Kind Regards!

    ReplyDelete