EclipseCon: Day Two

R0ml was here – excellent key note. Economics and responsibility. Warrants vs. ? Can’t remember. “Of course Eclipse is the worst programming IDE on the market – IT’S FREE”. And anything which is worse than eclipse isn’t going to be used, much less have someone charge money for. This is what “free” does – it sets the lower level of expectations. Literate programming. Reminds me of the old days when I worshiped Knuth and his idea of Literate Programming. Only thing was, Knuth’s idea of an IDE was raw TEX – insanity. Anyways, very cool stuff from ROml. Hard to keep track of and I was too busy listening to take notes. If you ever get a chance to hear him talk, I would suggest dropping everything and doing so. Well worth the dollar.
Ajax panel – what is different about Ajax that makes it impossible to build upon the past? I actually got a small quote in ARN on this (hey, we take what publicity we can)

An audience member emphasized that rather than devising new technologies, it may be a good idea to leverage what has already been done. “They should be standing on the shoulders of giants,” said Hal Hildebrand, an architect in Oracle’s Java platform group, after the session. AJAX is a new interface technology and lots of work already has been done in this area, he said.

Just let me expand a bit on this. X has been around for, what? Over twenty years? What’s so different about AJAX? It’s just a remote windowing system. It’s like a frickin’ VT100, for Bob’s sake. So you do it with XML or JASON. Oooooooohhhhh. I’m so impressed.
A button is still a button and a list is still a list. My god. All the Javascript is still written in the same namespace! No wonder you can’t get your act together out there and you have name collisions all over the place. Geebus, we learned about namespaces and scopes back in kindergarten. But I guess Web 2.0 broke all the rules and those bad boys are making it up as it goes along. Heck I heard Carl Hewitt (who was there, of course) has a class system for Javascript and a JIT. Man, that sounds an awful lot like Java to me. Congratulations, y’all. You just reinvented 1997.
Okay. Deep breaths.
OSGi panel – was it good for you? So I was on this panel. We played to a packed moderately occupied theater and it went over pretty well. It’s pretty clear that OSGi’s star is on the rise and the major players in the market – including House Harkonnen – are clearly buying into it. All in all, it was pretty good for me and hell, OSGi even kissed me in the morning and made me breakfast.
R-OSGi. This talk by Jan Rellermey of ETH was worth the entire cost of the conference for me (especially as House Harkonnen is paying for it). Basically, he turned OSGi into a distributed system in a quite elegant way. His talk started out with some background as to what choices are available for modeling OSGi as a distributed system. The first and obvious choice is JINI. Now, JINI is one of those technologies which seems to generate a lot of religious fervor. Sometimes I feel like the people who are JINI fans are kind of like old style communists who keep on telling people that communism was never really tried – JINI is the next distributed system and always will be.
Anyhow, companies like Parmeus have taken the JINI route in creating a distributed OSGi system and have run with it. I have to say, though, I agree with Jan’s take on JINI and why it’s not a great fit for OSGi. But I’ll leave that to Jan. Let’s just say that I think JINI has way too much baggage and is – quite frankly – a poor fit.
Next Jan talked about Universal Plug n’ Play, which is another candidate model he considered for distributing OSGi. Again, the model doesn’t quite fit with the way OSGi services are used and the way they are filtered and discovered. Yes, OSGi has a UPnP service definition and Jan pointed us to Domoware’s UPnP implementation which he highly recommends.
In the end, Jan decided to base his work around SLP – the Service Location Protocol. And I must say that I smacked my forehead in a D’oh! moment. I had played around with SLP quite a bit when I was fooling around with Smartfrog – it’s quite a sweet protocol. As Jan Points out, the mechanism SLP uses for attributes and filtering is the same LDAP query format that OSGi uses for the service filters. So, it’s a 100% match with the way OSGi does things.
Jan’s framework has the usual cool stuff such as auto generated proxies using CGLIB and does some pretty neat stuff like shipping virtual bundles across the network for the clients. Really, you have to get the code and start playing with it to see how cool his stuff is. Having been playing around with it for a while, I do have some critiques and changes (of course) that I’m making. But that’s the subject for another post ;)
Enterprise OSGi – Siemens, SCA, distributed registries and such. It was interesting to see their presentation and the problems they’re trying to solve. After the R-OSGi talk, I was pretty well primed and have a zillion potential solutions for them. Going to be much more interesting in the OSGi Enterprise Expert Group.
Jazz – Envy’s electric boogaloo. I must say that the thing that we love to do is create tools. tools for creating tools which create tools which allow us to create tools for managing the process to collaboratively develop tools for creating tools. Ye gods. They have their own source code control. Yea, that’ll go over real well at companies :)

Leave a Reply