Posts tagged ‘Java’

Nabaztag Scala Library

nabaztagA few months ago, I have submited to google code a library written in Scala which send simple commands to a Nabaztag.

The library is pretty alpha, I’m not fluent in Scala yet. So they is probably a lot of things to refactor.
The library is build using maven-scala-plugin, you should be setup in a few seconds.

I was pretty happy of the library until I tried to used it from the java side, and feel the horror. I especially thought that they were some kind of “conversion” between common java type like an ArrayList into the equivalent in Scala. There is not, I was forced to use a Scala List from the java side…
After discussing it with scala fans there is two suggestions, avoid exposing raw Scala List and provides method to add, delete etc… or provide a Java interface binding nicely to the scala code.
I have not choosen yet which way to go.

This library is currently used daily during our daily build, it’s part of a TeamCity plugin sending commands to the nabaztag when something bad happen to our product build lines.
I may give away the corresponding teamcity plugin if time permits.

It especially good now, that the rabbit is saved ( in French )

Link :

JavaCamp4

I spent last evening in the Paris google office which gladly hosted the javacamp4, a barcamp dedicated to java technology.

They were two sessions of around 1 hour each.
First sessions were : cloud computing, html5, spring 3 and mda.
Second sessions were : tdd, ddd and jquery vs gwt

I went to the cloud computing session, as I have a project of putting a java webapp on the clouds I wanted to share my views on it and also learn from others experiences. Unfortunately I was the only one there working on a real life project. Discussion was good, although more aimed at describing what are the current cloud computing offers : infrastructure ( google for your domain) and amazon s3, hosting gandi, wc2, azure and application: appengine.
We did have a refreshing talk on what could be be the future IDE, David describe it well here.
Good session overall, (roti 3)

I then join the talk titled: “jquery vs prototype vs gwt: which help produce the most industrial code. ” leaded by Eric.
I believe javascript code is difficult to industrialize, who unit test javascript code, let alone continuously build it ? They were suggestion on using selenium, which is good testing although it’s more integration testing than unit testing. But you can’t get rid of javascript if you’re going to write some nice web UI. Plain GWT on the other hand as good reputation when it comes to javascript, since you’re not going to see a line of javascript if you don’t want to. But the way GWT application are written are more “Application” than “Web Site”. Crawler problem arise among other things.
The talk ended is the unsatisfying conclusion that JQuery is probably the cleanest and easiest way to go, but you got to know Javascript…
Pretty good session, I learned quite a few things. (roti 4)

We were numerous to tweet during the evening, check this twitter search to have a feeling of the evening.

The buffet following was nice, and discussion went well with all the participants. In this kind of events, the after sessions discussion are at least as important as the sessions themselves.
A very nice evening, I definitely looking forward to the next camp.
Thank to the organizers, Luc & Philippe

Shots:
barcamp_scaledGoogleOffice

Links :

Devoxx 08

I’m in the train, mostly awaken, back from the Devoxx 2008 Conference in Antwerp Belgium. I’ve taken a couple notes but mostly I tweeted when I saw something nice.

A special “Bravo” for the organizers of the Belgium JUG, sincerely it’s the best conference in term of organization I’ve attended so far. A beatboxer, Free beers and french fries, a movie, can we ask for more ?

Here’s a couple of sessions I feel were the most interesting for me and I’ve taken shots with an iPhone :



REST Session (A must see if you’re asking yourself whether REST is for you or not, goes deep into what you could do to be really RESTFull and not only spit xml though http)


Scala session with Bill Venners (very impressive speaker, check the video when it will be available)


Enterprise Build with Jason Van Zyl (Very direct presentation, loved the starting rant on annotations)

JavaPosse 221 recording, hilarious ! Didn’t learn much, since everything was already covered during talk and sessions in Devoxx.


Amazon Web Service & Elastic Grid talk, learn a little bit of details of the myriad of web services around AWS offering, seen the ElasticFox plugin in use, nice !

Android Talk : Gradient, painters and the like, the media changes, not the high level techniques


DIY Multitouch with Java (and a tiny bit of JavaFX):

I come to this kind of conference to have a feeling of what is going on in the Java world, and meet people. It’s a special time, during which you can put aside current tasks and “urgent” things at work and take the time to look at what you are doing, and where the industry is going, and see if it matches, or not. So here’s a list of things, I found appealing during the sessions, and didn’t have time to go deep enough during the 3 days of Devoxx to see if it’s BS or real interesting things.

  • AWS : Must see in details if it’s difficult to put in place EBS for log and persistent storage and the effect of it on the price of an EC2 platform hosting. Must investigate and find which kinds of services are targeted by CloudFront. Eager to see what they will provide in term of load balancing. Must install the ElasticFox plugin and see if it works better for me than CLI.
  • JavaPosse : Will subscribe to the podcast into iTunes, it was too much fun.
  • Effective Java : Should have bought the book for the generics stuff, I’m not so good at it.
  • REST : Should try Jersey and maybe other JAX-RS implem (JBoss RESTeasy…) until I find something really good, and see how it matches with the “Resource” way of thinking. As a side note, I didn’t attend the spring session, but I heard Spring MVC 3 looks more RESTfull that ever. A very very good points are expries meta data and eTag. Still have not find a solution for collections of resources, should they all be represented with atom or atom pub, or in plain xml. Don’t know the answer.
  • JavaFX: Try the latest jdk 1.6u11( looks like its smaller in dl size), quite disapointed by the apparent lack of mobile oriented stuff. Should wait a little bit and see. But why not use it for small standalone eye-candy app.
  • Security: Must read part of OWASP documentation, print it out to coder and admin-sys alike if it’s good.
  • Scala: Looks very powerful, don’t know how to find the time to learn it, Coding Dojo ?. Must take a look at a thing called Hamcrest who does some nice things to java it seems.
  • Maven: Jason said he will support Hudson (Arrgghhh) so it builds maven project better, I’ve the feeling Hudson’s going to be maven best friend, but sometimes next year, cleary not ready today. The integration between m2eclipse plugin and nexus is too powerful too miss. Must digg into Nexus pro, and their release helper thing.
  • TeamCity: Meet the developers, nice people. Must upgrade to 4.0 asap. Should spend an hour or two playing with intelliJ with ctrl-s mapped to compile to see if it does the trick. Take a look at plugin example code in TC 4.0, to see if packaging is easier ?
  • Android500$ to get an Android phone, will see with my company if we could buy some. SDK is a roll royce compared to the iPhone one (especially due of the objective-c age…), I’ve used both.
  • XWiki: They have a new syntax, that really rocks, consistent and powerful, I’m eager to try it by upgrading to 1.7. Must also try their eclipseRCP based standalone client, and WebDAV mode, those should please the developers and wiki gardeners, back at work. Their technical demonstration of live editing of a wiki page is promising.

If you want to go into the details, and speak French :

Java 6 on MacOSX

Apple released Java SE 6 on MacOSX 10.5.2…. at least…
As most of us already guessed, they have made it available only on the latest MacOS version and on the latest hardware (64bits intel only).

As my team has released a cross platform product, we are stuck with JDK5 for a looooooooonnng time, too bad.

More links :