Day 4 ! Last day at Java One!
May 23, 2008
I decided to go although I saw the email alert about the Stomach Flu virus at the Moscone Center. I didn’t want to miss the last day of the conference because of a stupid flu, but it did affect a lot of people at the conference, including Joshua Bloch! Yue and I left really early, around 7 am to attend the General Session with James Gosling, so starting with that, the talks I attended for Day 4 were:
1. Extreme Innovation – James Gosling :- During this talk, Gosling presented a lot of really cool technologies like the pulse pen, the intelligent car, Javascript support in Netbeans, and project Darkstar
2. More “Effective Java”- Joshua Bloch :- This talk was a repeat for me, but Yue missed out on tuesday and wanted to listen and I went along. Joshua Bloch had the stomach flu, and I’m not sure if its because of that, but this talk was pretty broken compared to the same talk on tuesday.
3. Comparing JRuby and Groovy – Neal Ford :- Neal Gave an excellent talk comparing Ruby/JRuby with Groovy, and looks like Ruby beans Groovy hands down in most places. More interesting aspects of the talk for me was the demonstration of how one can write unit tests really easily for Java code with Groovy, exploiting some kind of access protection bug in Groovy. The slides for the talk are available here.
Personally, I’m more interested in using ScalaCheck for unit tests. Tony Morris has blogged about this here.
4. Rich Internet Applications with Adobe Flex and Java™ Technology:- This talk by Tony Constantinides was a big dissappointment for me, this talk was more an advertisement for Flex in terms of “buy the kit, pay! pay! pay!” than what it could do and how it could be integrated with the Java Webapps we write daily. I walked out after 30 mins of the torture.
5. Integrated Web Testing With Selenium :- This was the last talk of Javaone 2008 for me! Talk was about Selenium as a helper tool for Javascript programming and it was an unbiased talk( they promoted firebug too!). Funny part was that they didnt do live demos, they’d seen all the bad demos during the conference and decided to do it offline, record it and play the clips for the audience. Funny, but it worked out well. What I liked about Selenium, and which would make me want to use it is that you can record everything you have done and play it back, so that you know exactly what happened to get the point where you are at in the page. Good stuff!
Before the Selenium talk, Yue and I bought the Second edition of the Effectiva Java book and had it signed by Joshua Bloch! We got a really good discount on it too, so I’m really happy about it! Always wanted to have my own copy of the book(I borrowed and read the first edition), so am glad I got the new one.
After the talks, we hung around the place for a while, and drove back home to San Jose, sad that it was all over for this year! I loved the whole experience though and am definitely going back next year(err, if I get a free student pass!). Thank you Sun!
Day 3 of JavaOne!
May 23, 2008
Day 3 was a short one for me, I had a project to present in the evening for my Web Intelligence class.
I went with my classmate Glenn on this day, I attended only 3 talks this day:
1.Using FindBugs in Anger – Bill Pugh :- This talk by the creator of findbugs was pretty good, he spoke about using findbugs on large projects. My take away from the talk was how to configure findbugs to report bug patterns you want to see, etc.
2. Mylyn: Code at the Speed of Thought – Mik Kersten :- This talk was awesome! Mik leads the Mylyn open source project, which I have always been interested in. I loved the way he started and ended the talk, he hit the sweet spot for every developer, the lure of the “zen programmer’s mind”. That state of mind where code just seems to flow, where we make no mistakes and are invincible! He then presented mylyn as an aid. Really cool.
3. Programming with Functional Objects in Scala :- This talk by Martin Odersky was very good again, but after learning scala all semester as a part of my Programming Languages course under Dr.Horstmann, I was left wanting more from the founder himself! I’m really happy the langauge is being appreciated by a lot of the big names in the industry and I hope it gets used a lot more. I’m sure it will once the IDE support for Eclipse, IDEA and Netbeans gets better.
Other interesting things from the day was the afternoon chat between Dr.Horstmann and Joshua Bloch which I was fortunate to be around. Joshua bloch was showing code examples which used the new closures proposal and the possible confusions which could come from the new proposed syntax. Dr.Horstmann was still pro BGGA closures, but he sees how the new syntax can definitely be confusing and lead to problematic code. After sitting around listening to them for a while, we went to the room where the Scala talk was meant to be, and I continued talking with Dr.Horstmann about Closures, Scala and other programming topics, which was really interesting.

After the scala talk, I headed back home, the project presentation on my mind! Oh and it went really well
Day 2 of JavaOne!
May 20, 2008
My day two was the best day the week! Left really early with Yue because we both wanted to attend the Closures talk by Neal Gafter. We have been studying both the BGGA and CICE proposals for Java 7 extensively in our Advanced Programming Language Principles class, and we had even attended a talk by James Gosling about the Future of Java. I have blogged about that visit to Sun Microsystems earlier.
The closures talk was very very good, Neal Gafter made it look very easy, and yes, I find it to be fairly easy, although I personally feel that it would complicate the language needlessly. I like what closures can do, but I dont know the added complexity the syntax seems to add, and Joshua Bloch feels the same way about the BGGA proposal about how return statements, etc from closures could lead to confusion and buggy code.
Other talks I attended on wednesday:
The Minion Search Engine : I loved this talk, I am really interested in data mining, and I have worked with Apache Lucene before, and I was interested in what Sun has come up with for this product which is a direct competitor and I was very impressed. I still feel that I’d continue using Lucene because of all the additional things I can get it to do, although head to head, Minion seems to be better, Lucene has a much better developer community, and there’s all kinds of workarounds to get it to do whatever I want.

Boldly Go Where the Java Programming Language Has Never Gone Before :- This talk from Geert Bevin was again fascinating, he spoke about ,Terracotta, Google web toolkit, Continuations in Java(RIFE), the Android SDK and various other topics. Makes me want to give GWT a try for my own web application development. Read this blog for a better description of the talk.
The JavaScript Programming Language for Enterprise Application Scripting: by Olivier Modica and Zack Roadhouse, this was again a useful talk about various aspects of Javascript and its various libraries and I just wanted to sit in because I am fascinated by Javascript and one of the main goals I have for myself over the next 6 months is to use it wherever possible.
Yue and I ran around the company stalls getting our free stuff
and talking to people. We had our picture taken with the JavaDuke!
we also got free movie tickets! to the Ironman movie at the Oracle stall! The show was at 7 pm so we got out around 5.30 pm and grabbed a bite and hung around before getting to the theatre at 7 pm. The theatre was full of people with pink oracle tickets and it was funny as hell to see everyone enjoying their free popcorn, soda and running around to get good seats! We sat around passing sarcastic comments about everyone
.
It was a long drive back at 10 pm to San Jose, and I had to get up early the next day, I wanted to be there for Bill Pugh’s talk at 9.30 am about using FindBugs in anger!
First day of Java One
May 11, 2008
Day one at Java one!
Caltrain again to reach there on time, the talks I attended were:
1. JRuby – why, what, how…do it now – This session was primarily a JRuby introduction and being such, it was pretty good.
2. More Effective Java – Joshua Bloch – Everybody wanted to be at this talk! With all the buzz about the new Effective Java book’s second edition coming about and Joshua Bloch being who he is, attracted a lot of people to the talk. The talk was just OK in my opinion, the beginning and the end was interesting, but the middle part of the talk where he focussed primarily on Enums and EnumSets made it really boring for me.
He introduced a nice way of remembering when to use ? extends versus ? super and called it PECS(Producer extends, Consumer Super), that is, if the code produces something, use ? extends and if the code consumes something, use ? super. Neat.
3. JavaScript- The language everybody loves to hate – This talk covered more of the technical aspects of Javascript and how its really cool, not just for client side stuff, but the intrinsic features of the language itself. The speaker covered a few of the popular Javascript variants out there like Jmaki, etc and also mentioned what not to do in Javascript which a java programmer would try to do.
4. Developing in JRuby using Netbeans - Ugh, was supposed to be a good talk, and I know the speaker is really talented and famous and one of the main committers for the JRuby project, but the demos just sucked and he just kept running into trouble and it made it very boring.
5. Defective Java code – Turning WTF code into a learning experience-William Pugh(creator of the Findbugs tool) – This was for me, the best talk of the day, the speaker used various code examples to highlight defects in them and also discussed the various ways of overriding the equals method and the subtleties behind using instanceof and getClass. He also took examples from the http://thedailywtf.com/, which is pretty fun and a staple for many developers i think.
After this talk, Cal train! Here I come! Dr. Moh wanted me to be there for his class so I had to leave early on Tuesday. Missed Brian Goetz’s talk on concurrency! Dammit! There was quite a few other good sessions that day, I just need to get a hold of the slides/videos for those talks when they become available.
Community one Experience
May 11, 2008
My first time at Community one!
I arrived around 10 am, I was not interested in the keynote speeches which started quite early.
Since I was registered for both Community One and Java One, I picked up my badge for both together and then I was told to go pick up my free stuff! The most exciting part of the day
.
Me and Yue(my classmate) picked up our free backpack, t shirt(s) and conference guide, along with a free Opensolaris cd, and then went straight to the first talk we planned on attending.
The talk was about “Java Script and Dom Design Patterns“, this was a pretty good talk and I plan on using the patterns discussed during the talk. The slides from the talk can be found here.
Next 2 talks I attended were about JavaFx, and since Sun is promoting it in a big way, I was curious to know what it was all about, and although it seems nice and useful, it seems primarily geared towards Rich Internet Applications for the Desktop, which is not something I am interested in. I was primarily interested in technologies to deliever rich content applications in the browser.
After that, I attended 2 talks about Ajax, the first talk was by 4 Sun Engineers who demonstrated how ajax based applications can be written in Netbeans and over all, the talk was pretty useful. The next talk was about Asynchronous Ajax and again, I really liked this talk and plan to use for my own applications. One of the speakers from the first talk has some useful stuff from the talk up on his blog here here .
The last talk I attended was one about “The Java™ Persistence API in the GlassFish™ V3 Application Server with EclipseLink“, I expected to find some kind of a demo about programming with the Java Persistance API + glassfish server using some kind of a neat Eclipse Plug-in which I didn’t know about, but apparently its a product on its own and has nothing to do with Eclipse. Yet the talk was pretty well presented and useful.
So, my day passed with a few nice but over all a mediocre set of talks, but the best was yet to come!
The evening “party”/community reception was something I didn’t expect!dancing girls! Free beer!! for some eye candy
, check out this link for photos from the party!
Just as I was about to leave, I saw people lining up to roll inside the giant ball(don’t know what its called!) and I decided to try! If I was going to make a fool of myself, I’d rather have it done in front of a complete set of strangers! Great fun!
After that, I headed back home on a really slow cal train headed to San Jose. Eventful day 1!


