JavaCamp #4

Posted by Ktoso on 14/06/2010 – 22:21

Polish Java User GroupYup, last Saturday we’ve had yet another JavaCamp in Cracow. It was in my opinion the best yet – mostly due to our awesome speakers. One could call this “JavaCamp” an “ScalaCamp” if you think about it – as most of the topics (3/4) where mostly about scala (AKKA is avaiable as both Java and Scala API, but the Scala API is a little “cleaner” – well, as everything written in Scala I guess :-))

Łukasz KuczeraScala the next Java?

Łukasz’s presentation really did fit the topic and did a really good job in setting the “mood and feel” for the rest of the day. People who didn’t know any scala before – now did know it enough to understand all the code Jonas displayed later, and people who’ve known some scala before – might have got some nice information from this. I really liked it and am now more tha ever convinced of scala’s “perfect fit” nature in the JVM lanugages team. As I was sitting with my friend Temporal – who’s a real Erlang and Lisp hacker ;-) - I’ve got some interesting insights about what scala took from Lisp and later on, what Akka took from Lisp and Erlang. A very good presentation in my opinion. :-)

Jonas Bonér (private site) – Akka: Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Actors

A very very awesome speech and topic. Akka seems to do Actors and Parallelism very well. Also, thanks to my lisp/erlang friend, I’ve had some amazing insights about where Jonas got some of the implementation ideas. Also, we’d both like to note that some things are done even cleaner in Akka than in Erlang: in erlang you’d pass an actors PID around in order to “link” with another, and the links are always bidirectional. The actor pattern really powerful and scalable from what I’ve seen. It’s also implemented by Vaclav Pech in his GPars library (“Groovy Parallelism”).

This should have been just another presentation in a series of them as Jonas already had presented it on both Scala Days 2010 and GeeCON2010. But! As the present programmers really where into this topic we’ve had a lot of pauses with some chit-chat. A very valuable thing for both akka and our community :-) Too bad that Jonas didn’t have the time to go more into STM, as I still dont really know what it essetialy is “in practice”. Later we got a glimpse of Agents and what they could be useful for. All in all… go checkout the movie – it’s worth your time if you don’t know about parallelism and akka (I guarantee it ;-)): jc4-1-scala-min.mp4

Jonas covered and built upon the previous presentation, and we got to see some more scala in action – feels really natural. The transition from Java->Scala seems to be as painless as the transition from Java->Groovy. That’s a really nice thing I guess. There’s also an Java API for most the things in AKKA – so if you don’t want to adopt Scala in your project – no problems here. If you’d like to read more about AKKA, just goto their website at: http://akkasource.org/ – and yes, it’s open source. :-)

Oh, and if you’d like to see the slides Jonas used: they’re online on his slideshare: http://www.slideshare.net/jboner/akka-scala-days-2010
Also feel free to read this very in-depth post on his blog: Introducing Akka – Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Actors

Pizza

In the break we had some chats about the usual stuff – programming, companies, and of course a little something about the gaming industry ;-) The pizza was quite tasty – as always – so let’s move on to the next presentation ;-)

Bartosz KowalewskiIs OSGi ready for enterprise use?

Yet another go with “grasping wtf OSGi is and WTF would I use it?!”. This topic was kinda new to Temporal, as he’s not into JEE Java, where OSGi now seems to be “trendy”. So after a short intro into maven/dependency stuff from me we focused on Bartosz’s presentation. I was immensly happy to see that his thoughts and presentation focused on “what OSGi should solve, and why it sometimes does NOT”. His code examples really cleared up what the problem is, and displayed why OSGi is sometimes a much harder to force to work properly than we’d think it should.

All in all, he described it as an amazing technology to play with, but if one would to use it IRL, with real deadlines etc – one should better know what he’s getting into, as OSGi does solve some things, but in exchange it introduces a lot of more compicated problems. The presentation was really good – as it focused, and really showed how/why OSGi should be awesome, and why sometimes it’s not – most of the time with needless complexity (!).

UPDATE: If your interested in the examples Bartosz has shown during his presentation – download this this zip file that he has made available. It includes the presentation, as well as the sources he used (plus the maven artifacts needed to run the app). Don’t worry if some tests fail – they’re designed to… :-)

Łukasz KuczeraLift – simply functional web framework

The last presentation was again Łukasz, continuing in the spirit of this “Scala-flavoured-JavaCamp”, with Lift, an web framework with quite some nice contepts – as view first etc. As it was more of a code-trip, showing the basics of lift, there’s not much to comment on here.

I was kind of disappointed with Lift. It really didn’t seem to be as powerful or mature as Grails of Symfony for example. The “view first” pattern is of course nice and quite well “forced”, but it didn’t strike me to be any different than just Django templates. The CRUD also does not impress someone who’s been using Rail-ish stuff for quite some time. There was not much said about the ORM, but I feel quite comfortable with GORM and the routing system is waaaay overgrown – just look at symfony/grails/rails routing files – they’re short and easy – what I’ve seen in Lift does not seem to be short – it’s quite long and with lots of empty [] etc… I may come back and take a look at lift when I have the time, but it really didn’t impress.

Videos and sources from the meeting

The 4th edition for our JavaCamp was truly amazing in my opinion, and this time, we’ve even got an amazing place, sponsors and great speakers. Have a nice holiday all! And if you didn’t manage to be there live, you can always go to the page bellow and watch the video’s I’ve recorded from the meeting :-)

All videos are temporarily available on my server – here: http://pjug.project13.pl/
I’m hoping to get them up on the java.pl server soon, or better, on parleys.com – but we’ll see about that. :-)

PS: The next camp, won’t be organized so soon – but from what we’ve planed, we’ll be goring into some groovy topics most probably… But don’t take my word for it ;-)

Tags: , , , , , , , , , , ,

This post is under “coding, english, java, review” and has 2 respond so far.