Wednesday, November 17, 2010

Devoxx 2010 - University Day Two - Review

It is really foggy today at Antwerp , but nobody can stop us for one more day of Java and development tech knowledge overdose.

Other sessions:
Eventually you can not attend everything but some sessions produced some buzz on twitter. There 2 things noted down.
- JCite : A Java Source code citation system
-Presentation about Groovy by Guillaume Laforge
- Presentation about  Eclipse Mylyn 
- Paris, France Java User Group - uploaded a nice video regarding Devoxx 2010.(its nice)

Session 1: Java EE 6 Tutorial. Reloaded by Alexis Moussine-Pouchkines & Antonio Goncalves
It is always a pleasure in the recent years to see this french duo. Alexis from the GlassFish Team and Antonio, the JUG Paris (France) leader and author of J2EE 5-6 books - presented a heavy set of  features of the J2EE 6 specification.

I am huge supporter of the EJB model in J2EE spec and the latest version of the specification -> 3.1, has some very cool and long awaited features (for years). My personal favorites (I have blogged about them, in the past), the Timer Service, the Asynchronous calls (even though people should watch out - Async Calls is not something that aims to replace completely JMS- which is indeed one of the most important parts of the spec + continer.
 The new definition of  profiles that slowly make it into implementation while known App Servers start to support them I believe is going to boost even more the j2EE6 adoption.
The standalone container (app-container) was one of the nice things in the demo - EJB's could be used within a J2SE environment preserving most of their capabilities (injection, transactions, wiring) - something that can help even more the adoption of mainstream and easy EJB testing. Currently there are solutions like the OpenEJB lightweight container - from now on we will be expecting each major J2EE container to provide such an implementation.
 The session was full of upcoming or new features finally implemented (Servlet 3.0, CDI) - so it was really a worth attending session. My overall feeling is that J2EE6 adoption is going to grow, the technologies and tools have matured a lot - and we are going through an era where Enterprise Developers are actually more free to work and deal with real business problems rather than tools and framework technicalities. 
The source code for the demo's can be downloaded here.

Session 2: Agile ALM by M. Huetterman.
I know Mike form the Java Champions and JUG leaders community + his involvement on areas related to Agile Software development, Scrum and team coaching. His sort session (15minutes) was about Agile Application Lifecycle which is a summary of techniques, tools and ways integrated various tools towards rapid and agile software development. Michael talk briefly about things like continuous integration, code repositories, ticketing systems, bug trackers, testing tools, communication platforms between peers within a company- the use of all them integrated can lead to a better software development process.
One of the things noted and I really gave it a second thought is that very often known methodologies for example Scrum are not the complete answer to the question - or challenge of agile development. Scrum deals with the management life cycle and work time boxing - it functional aspects and what we will be doing within the software development cycles, what tools we will be using and how these tool feat with the methodology is another story.
That led me to think that I have seen cases where they have quite a complete and good approach on the functional side - using and integrating tools and techniques into their software development process (Code repositories, build systems, cont. integration, testing, automated testing bla bla) but are completely lacking of a good management methodology (Scrum, KanBan) . Of course there is the other way around -companies introduce methodologies but do not accompany them with the appropriate tools. You may ask the same question - to your self and place you company on the board. It was a 15 minutes session - buts lots of stuff to wonder about afterward. Definitely worth attending and very happy to see an old Java friend from the glory days of the Sun Java Champions program.

After the yesterday's interesting buzz with 2 sessions related to alternative DBMS systems (Hadoop, Mongo) and the fact that facebook announced that is going to use HBase as its main db for the upcoming messaging system - I though I could give it a try and find more about HBase.  

HBase is a DB system (actually a  is an open-source, distributed, version-ed, column-oriented store as stated in their official system) build on top of Hadoop and relying on the concepts of Google's Big table. Is built mainly on Java. Again the same restrictions and characteristics apply as with Hadoop, mainly used for systems that will handle Petta Bytes (yes) in a distributed scalable manner.

Session 4: What's new in Hibernate: a JPA 2 perspective by E.Bernard
Despite the fact that the topic was interesting - I have to kindly admit that I got a bit bored by the pace of the slides, at the same time - I was eager to check stuff on the parallel session of Hibernate Search/JPA2 . The session was quite interesting with lots of  coding /examples and references to Apache Lucene.There was some demo of the Hibernate EnvVers  a technology that offers hibernate - entity versioning - I can already think of existing projects that we would love to have such a thing!!
Last but lot least E.Bernard talked about Hibernate OGM - an interesting mixture of existing and new technologies in the ORM and DB field. One of the best descriptions were given by one attendee in a twit here ogm = jpa - database + () + lucene query).
The demo code of the session can be found here (GitHub)
Session 5: Java EE 6: Tooling Status: what am I missing? by Ludovic Champenois
Quite of an interesting session by Ludovic C. member of the GlassFish team Architect @ Oracle.  It was around the current state of J2EE6 support in our famous IDE's  java community). Netbeans, Eclipse and IntelliJ are equally competing for user share - providing different type/amout of support to the upcoming standards. From the slides I could derive (as the speaker also notetd) that currently Netbeans seems to provide the most complete support towards J2EE 6 standards - but things are rapidly changing since the other IDE's are catching up with upcoming releases. Last but lot least the speaker commented on Oracle's strategy towards supporting the GlassFish Application server especially version 3.1 and the Netbeans platform (IDE).

Session 6: Android Q&A by Romain.Guy and Chet Hasee.
Despite the fact that I bought some books related to iphone development I acknowledge the power behind Android in many ways - and I silently following community and technology updates. I thought tha this session could reveal some more interesting aspects of the Android platform since both speakers are active developers. Despite the fact that both them - did not actually respond to some question due to some restrictions applied by Google policy (so much for the open I guess) , some nice things came out. In one question regarding a book recommendation for someone starting coding for Android Chet Hasee proposed the book he is currently reading  - Professional Android 2 Application Development. I managed to make a question regarding the types of testing being performed currently during the development of Android OS - the answer was pointing to several things, functional, automated, unit testing , smoke testing integration testing etc. The last part of the question was about - which methodology the Android team is using in order to ship the various releases - I was expecting some sort of agile-ish answer or apply of Scrum - eventually the answer was 'we just ship code' no formal methodology. There were many other questions regarding specific development problems or other asking about the future, some of them did get an answer some others were skipped due to policy restrictions :).

Session 7: Scalable Data Structures for Java by Talip Ozkurt
Can you imagine a library of almost 1.5 Mb being table o provide the same (almost) functionality as products like Terracota or Infinispan or JBossCache. I have to admit I was surprised with all the stuff this fellow neighbor (Turkish) presented- with his technology hazelCast. A distributed in memory cache (vm based) that operates on pure Java structures like Maps, Sets, providing messaging capabilities among different jvms and enabling task execution on different jvms? The programming model is VERY easy (I was amazed) and the host managed to answer all the different questions regarding the stability and efficiency of his implementation. Its free and open source so in order to make sure and justify (or not) the 'too good to be true statement' I will give it a try! I suggest you all do it is pretty easy actually. It was quite of session ...after a tiring second day!

That is all for now - big day tomorrow - conference day one and I think I managed to collect 3-4 tshirts today - eventually I am expecting some more tomorrow - geek happiness.

1 comment:

  1. Keep them coming Paris. Gives a glimpse of what it feels like being there. Love it!