May 19 2006

Javax Scripting

The Java community is really excited about JSR 223 which will bring scripting to the Java platform. My first session day went over the new Scripting API in Java SE 6, the next major release of Java. By the time I entered this session I had already attended several session that focused on the Scripting on the Java platform so there wasn’t a lot of information in this session that was new to me. What I noted from this session is the large number of scripting languages now available to a Java developer. Scheme, Pnut, JRuby, Jython, JavaScript, and Groovy are just some of the script languages available in the JVM. I also discovered that Java SE 6 will introduce a new command line application jrunscript.exe that can be used to invoke a script file. At this point, jrunscript.exe in still designated as experimental and is intended to be available only with the JDK.

Technorati Tags: , , , , ,


May 19 2006

Java One Friday: General Session

Scott McNealy made an appearance during the last session of JavaOne. He joked about Jonathan Schwartz’s ponytail by saying that all of management is trying to grow a pony tail. Now, I have to say that was funny but there is nothing funny (at first then really annoying) than a bunch of nerds and techies cracking up. There is a lot of snorts and unconventional sounding laughter. I felt like programming shut the lips of the guy next to me, because Java is everywhere and everything you do in JavaOne involves code.

The hall was jam packed with thousands of developers that had come here to listen to Scott and James Grosling. There was a powerful techie vibe throughout the place that kindled something in me. I mean, some of the world best Java minds, hackers, and developers were sitting in hall, and I was there too!!

Scott said that we are living in the Participation Age where users are not only consume content but producing and sharing it. We as a species have come through the Ice Age, the Industrial Age, the Information Age, and now have arrived at the Participation Age. I can only imagine what is the next age. The Global Warming Age, maybe? Scott made references during the short talk about global warming. Speaking to all those present he said, “You are cursed with the opportunity to make a difference in this planet.”

James Grosling, like a true hacker at heart, spent his time demoing some projects. In particular I was interested in Project Jackpot. The demo didn’t work just right because a goat wasn’t sacrificed to the to demo demigods but from what I gather Project Jackpot is a power refactoring tool can can modify your whole code base. For example, you can configure your IDE to replace a deprecated method call from your code base with the correct snippet of code. This sounds like something to keep an eye out for.

Technorati Tags: , ,


May 19 2006

Rapid Web Development With Grails

In this session I got to see a little bit more under the covers of Grails. Grails is built on Spring IoC, MVC, and WebFlow. It also makes use of Hibernate and SiteMesh. I am currently working on a Rails project and have some background with that framework and with experience fresh in my mind I have to say that I am impressed by Grails Server Pages aka GSP. The Grails template mechanism, the heart of GSP, supports dynamic tag libraries. as far as I know tag libraries are missing from the latest release of Rails. My Rails rthml files have a bunch of scriptlet code that is getting on my nerves and their is no way around the <%= @foobar %> scriptlet. In my humble opinion, Grails template is far better than Rails. Some of those in attendance did note some objections to how you define your model in Grails. In Rails your model extends ActiveRecord and consists of just two lines of code. In Gails your model doesn’t extend any given class but needs to define properties for the table columns. This differences are rooted in philosophy rather than technology. As a hacking project for anyone that is interested, it should be easy to hack a Grails version of the ActiveRecord if you feel that is what you need.

According to the speaker, Grails is not just for ‘Greenfield’ applications. The speaker was willing to put money to quell questions regarding performance because the Groovy code that makes up Grails is a small part of the application. The Grails platform is backed by the performance of Hibernate, Spring IoC, etc. that make up a large part of the framework. Your Groovy code is just a facade.

Technorati Tags: , , , ,


May 19 2006

Java Champions

I went to this BOF just to kill some time before the Grails BOF. It is interesting, just before attending this BOF I had read the blog entry by Yakov Fain about his impressions regarding the AJAX Smackdown session (my impressions are here). Yakov is a Java Champion from the New York/New Jersey area. Durng this BOF, Yakov talked about the obvious benefits to being a Sun recognized Java Champion. In regards to the negatives of such recognition he said, “my clients expect me to do miracles, why? Because I’m a Java Champion.” But Yakov admitted that he is a mere mortal programmer, with other priorities and a family. To those that have the passion Yakov said, “If you want to be a leader, it’s easy. Just be the one.”

Technorati Tags: , ,


May 19 2006

AJAX Smackdown

My last session of the day was a panel discussion covering Dojo, Flex, DWR, JSF, and Swing/Java WebStart. The moderator asked a really good question. Does all the excitement over AJAX promote JavaScript as a first class language? Now, AJAX is a client pull mechanism and the moderator queried the panelist into a server push technology which some think might be needed in the future.

I am familiar with Flex but according to the Adobe representative, Flex is a free Flash base programming model that is more conventional to developers as oppose to the Flash timeline.

I was interesting to have the Swing perspective in this whole AJAX/Rich Internet application discussion. Responding to the argument that Swing is hard to learn and that it is hard to develop good UIs, Chet Haase joked that the API doubles as an IQ test.

It might be worth mentioning that in HTML that layout might seem easy with all those WYSIWYG editors and Java until recently didn’t have anything like that. Also with Swing you can position components absolutely with pixel perfect precision. In HTML the best you can do is give the browser hints as to position, not edicts.

This session also touched the issue of data binding which was covered in depth in Desktop Patterns And Data Binding. The key idea behind data binding is that it is important to have a consistent way in the language to be able to reach out and touch your data from the UI.

Technorati Tags: , , , , , , ,


May 19 2006

Extreme GUI Makeover: Lookin’ Better

This session was like Queer Eye for the UI Guy. The presenters, Scott Violet, Shannon Hickey, and Romain Guy (all from Sun Microsystems) spiced up a mail client not much unlike Thunderbird. It truly was as if Thunderbird got a makeover. The presenters did some very AJAXy type of UI enhancements, such as fade ins and outs, presenting tabular data as rich lists with images, and some animation. If you want to spice up your application you can do the following: use the Timing Framework for fade in and out animations, make use of gradients, use alternative colors for rows within a table, enbrace white space (already mentioned in Dos and Dont’s For Swing Apps), use the glass pane, and add some drop shadows and translucency.

If you are interested in making over your UI, here are some projects you should look into: SwingLabs and JH Labs. Here are some class names that you might also look into: TimingController, ShadowFactory, JXCollapsablePane, and BasicGradientPainter.

After this session I felt like asking these peeps if they would pimp my UI.

Technorati Tags: , , , ,