Some RailsConf impressions


So, I’ve spent lots of time talking to people about numerous things. We have had some really nice conversations about everything related to Ruby, JRuby and ThoughtWorks and there is an incredible buzz going on here. Yesterday me, Roy, Tim (Bray), Cyndi, Martin Fowler, Charles, Tom and Nick sat down over dinner with DHH and talked about JRuby, which was also very interesting.

All in all, it’s very exciting, and I hope it will just continue to be. I’m looking forward to the rest of the day, and tomorrow is going to be a new story.



ThoughtWorks, Mingle, RubyWorks and JRuby


So this is something that’s been brewing for a while now, and it’s all very exciting and was announced this morning at the keynote by Cyndi Mitchell. The relevant points are Mingle (which I’ve talked some about already), RubyWorks which is an umbrella for the things the enterprise needs to make Ruby viable. The first product out of RubyWorks is an installable package which gives you the deployment story basically for free. It’s quite awesame and ThoughtWorks will offer 24/7 support for it from June.

For me personally, the most important part is that ThoughtWorks will also offer JRuby support 24/7 from June. That’s right, 24/7 JRuby support. Wow. ThoughtWorks does believe in JRuby, they think it’s something really important, and we want everything to get this.

Find out more at http://rubyworks.thoughtworks.com.



David about Rails 2.0


The DHH keynote this year was really good for a few reasons. First of all, David was very quick in saying that Rails 2.0 will not be anything radical, nothing really new, just better. Also, he actually announced that he had changed his mind about HTTP authentication, and performance (and this is kinda amazing of him to say… =). But all in all, it was a good talk about what’s coming next; an evolution of the current things, but still the same Rails, just with more REST support and other goodies.



JRuby RC2


The day before RailsConf started, me, Charles and Tom sat in the lobby of the Courtyard, coding away, fixing problems and pushing out something like 5 versions of 1.0RC2. But the final RC2 is really, really good. You should download it, test it, and if you’re at RailsConf, report any bugs you find and get a cool t-shirt! JRuby is really making a huge buzz at RailsConf right now, and it’s sort of overwhelming! I’m very happy about it, of course, and there is still some nice things happening. Yesterday, we got a small bug in truncating files fixed, which means exclusive file locking works now.

1.0 is looking really, really good. It should be out by the end of May, and it’s going to be a smash.



RSpec 1.0


Yesterday, the RSpec team pushed out version 1.0 which I’m personally very happy to hear. RSpec is a really important project and we are seriously considering including RSpec in the base JRuby distribution. Congratulations on the 1.0 release!



Congrats to Ward Cunningham


I met Ward Cunningham for the first time this Thursday, but I’ve always been very impressed by the things he has done. And yesterday he got a new job at AboutUs, a wiki company founded in 2005, as CTO. Congratulations!



JavaOne day 4: the final friday


So, the day started out quite late (since I was way tired after last night…). First session was a very accomplished, though slightly shallow, comparison between doing an application with Java EE 5, Ruby on Rails and Grails. I didn’t really learn anything new in this presentation except that Java EE 5 is even slicker with NetBeans, and that Grails is maddeningly, sickeningly, seriously slow when doing simple stuff like creating scaffolds. I can’t understand why this is so, since it isn’t much do it. Basically just create a file with a few rows of customization.

After that I paired up with Jon to look at Mingle again. Oh boy, the ones who is coming to RailsConf will get a treat, that’s for sure.

The Jython session by Otmar Humbel was really good, and had a great example. Basically the whole demo sessions were done in one single application which he started at the beginning and never stopped. He just hotswapped the Jython code dynamically. Very nice. I think the most interesting part of that talk was in the Q&A when someone asked why you should use Jython instead of Groovy or JRuby. I’m sad to say that I had to literally run at that point, so I didn’t hear the answer… But still, if someone was there and heard, please tell me. For me personally, it’s very impressive that Jython got started in 97, and actually is still alive (due to a recent revival of course, but even so. I’m glad Charles gave up one of his talks to let the Jython guys in). It was also interesting to see the differences in philosophy between JRuby and Jython in terms of Java integration and things like that. Very good stuff.

The bytecode manipulation talk was interesting; it was nice to see what (and how) Terracotta does with ASM. The TopLink parts were nice, but really way to basic to be interesting. Charles stuff was good, of course. We know Charlie always does good things, don’t we? =)

I had great fun at the Java Puzzlers this year. I’m happy about there not being many puzzles incorporating generics, because those are usually boring. The main problem that these guys always exploits, seems to be mostly in the boundary between Java Objects and primitives, and interactions between primitives. That’s what you get when you try to create a language meant for both system development and application development. It just shows in all the seams. A good language should not have seams, unless they’re necessary for the specific domain of that language.

Finally, Rob Harrops talk about exploiting JRuby to create DSL’s was really good. It was great, and Rob is a very accomplished presenter. I had great fun. That said, I think that some of the stuff still went over the head of most Java developers in the audience.

And that seems to be the theme. Most things I enjoy, I think most other people didn’t enjoy. Interesting, that.

So, now it’s off for dinner at the Stinking Rose with the JRuby guys, Dion, Barry Burd and Jon.



JavaOne day 3


The third day of the conference started slow, due to my being dead tired from the day before. But I still managed to get to Charles and Tom’s JRuby on Rails presentation. Obviously, this was a very good presentation and JRuby is very important. But you know all that, already, don’t you?

I then went on to a session giving a technical overview over GlassFish v2. Now, this seemed interesting, but wasn’t really so. There was some nice information about how clustering should be setup so you don’t lose to much data if you have more than one instance on the same machine, but other than that… Nah.

After lunch, I went to the Advanced Groovy talk, expecting to see cool overridings of the MetaObjectProtocol, or how to implement your own AST shufflers. But no. What we instead got was some tidbits here and there, and explanation of how to add new methods to existing Java objects (and this is really gross, you have to wrap the usage of these methods in a block, and the methods are defined on a new class as static methods…) Anyway, on to the demos. I got a real feeling of Deja Vu, since I had seen this exact same demo last year… XMLRPC communication between two Groovy instances, then ActiveX usage of Excel, combining it with Swing. So, yeah. As someone else said “It’s a really great Excel demo, but what has that got to do with Groovy?”.

Next, I took it easy for a while, walked around and did some programming. Finally, it was time for Tor’s and Martin’s talk about Ruby Tooling in NetBeans. And boy, it was an outstanding talk if you’re interested in compilers, type inference, the challenges of dynamic languages and other stuff like that. I loved it, but I think most of it went over the head of most people in the audience.

Then I was of to the Sun Certified Professionals party which is always nice. I met some cool people and Lars won good swag by being smart really fast. Good for him!

The After Dark bash was quite allright, but nothing extraordinary. And it got really tasteless when the showgirl in metal corselet came onto stage with a grinder, which she turned on herself, making sparks fly all over the place.

After that, we went to the JRubME talk, about JRuby on Symbian and Java ME. A great talk and a great project. In fact, it’s really really cool, and if you’re interested in ME, you should download the source and start hacking a way on it! The project needs contributors.

We went back to the After Dark bash finally, took some more beer, and then decided to move on. The quest was for Aquavit, and someone thought that the Starlight Room would be a good place for this, so we headed there just to find out they didn’t have either Aquavit nor any good scotch. Oh well, it was fun anyway, and the view was fantastic. Characteristically, me, Tom and Charles got into a real interesting discussion about the subjectivity of self presentation, and representation of knowledge in terms of probabilities and deltas from ideal knowledge, and how this applies to onthologies. Neat stuff. But maybe the dance floor wasn’t the best place to have this loud discussion…

After that we settled down and decided it would be fun to have a JRuby summit in Minnesota! So, we’ll see if that is possible… Then I crawled home to my hotel. My feet are killing me today, but there are some really interesting presentations, so I’ve gotta go.



JavaOne day 2


So, my day didn’t start out with the Oracle general session, which I’m quite happy with in retrospect. Instead the first talk I saw was “Quick and Easy Profiling with Integrated Tools”, about NetBeans profiling support. Very useful stuff, actually, and 6.0 can do some amazing things.

After that, it was time for a packed Josh Bloch’s Effect Java Reloaded, except it wasn’t really reloaded that much yet. I was a little bit disappointed, since most of the stuff was the same as last year. Some parts about the Builder pattern, much info about do’s and don’ts with generics (much of it having to do with type parameters and wildcards). The TypeRef pattern was interesting, but not something I will find very much use of, I think.

After lunch a went to a presentation which I really thought would give me something. “Ruby on Rails Meets the World of Enterprise Applications”. Now, I really hoped this would include some information on the Enterprise problem with regard to Rails. I was very disappointed. The talk was basically about a 3-week application written in Rails that connected to SAP. So the enterprise in question was there because of SAP. That said, the presenter was good, it was just not the subject I had wished for. And by the way, what does this presentation do on JavaOne?

After that, I spent some time looking at Mingle issues with Jon. I decided to go to the upper Haights’ area to shop, and then get back to my hotel room for some programming. As it turned out, I really didn’t go to any more sessions yesterday. After programming, I went to a Swedish Java User Group meeting here (and what a turnout! it seems like there’s over 200 Swedes at JavaOne this year.)

The plan was to get back to the BOF’s after that point; there was especially one I really didn’t want to miss (the Dynamic Languages BOF with Frank Cohen). But, I happened to get invited to the Google party, so I spent the rest of the evening there, meeting lots of interesting people. It was great fun.

And now I’m about to go in and see Charles and Tom do the JRuby on Rails presentation. More information later.



The RedMonk unconference at CommunityOne


So, as you know, RedMonk arranged an unconference at JavaOne/CommunityOne this year. I couldn’t attend all sessions, but among the ones done were one about dynamic languages, and we got some really good discussions going. We haven’t really finished those discussions yet, though, and it seems we will take it onto a mailing list, but it was a very good environment to start out.

I really hope RedMonk will be able to do this next year too. More info about it can be found here: http://redmonk.com/wiki/index.php/RedMonkUnconference.